adding allocator class
refactor allocator

- allocator can be on the stack
adding header
adding oom callback