Various sub-systems of blitz need to be able to allocate a unique series of object identifiers for resources they manage. This package provides generic support for allocation of these identifiers including the ability to store allocation state.