Memory Pool Custom Allocator implementation