First attempt at writing an allocator