Rate limiters
This module defines rate limiters. A rate limiter is parametrized
by its limit and a maximum waiting time. The wait
function will
collaboratively hang for a delay necessary to respect the
limit. If that delay exceeds the maximum waiting time, wait
returns false
; otherwise it returns true
.