poolallocator constructor