Efficiently generate and reclaim slot IDs from a numerical range.
SlotGenerator type works by maintaining a list of unused slot
ranges, and pulls the lowest available value from the slot pool whenever the user requests
one. Slots can be reclaimed and placed back in the generator pool with the
methods. It's not a terribly complex implementation, and it shouldn't be used if you need to
generate secure IDs, but you don't always need a secure generator and the complexity that comes
The slot generator.