adding Doug Lea's allocator. constructor and destructor