Make an IdAllocator struct