Re-phrased simple_allocator implementation in terms of std::bitset