remove dctors
add external memory manager interface
new ExternalMemoryManager