added 3dsx support

This adds 3dsx support
@neobrain Because there are better alternatives, like the mentioned `std::vector` or .`std::unique_ptr` (also I would argue changing the semantics of new is a bad idea in general, but that's not the point).