big update in Linearallocator, now uses move semantics