progress on memory allocator