A memory allocator