C++ STL compatible allocator based on ODP buffer pools