A small semaphore in vanilla JS, useful as a lock pool for something like rate limiting