Reorganized some classes within the memory package

- TypeManager can now use exposed classes to wrap a pointer
- Fixed creating custom types with auto_dealloc enabled
- Removed class attributes of Array and MemberFunction