in reply to better way to cleanup a package?

There's Symbol::delete_package available to clear a packages symbol table.

This may not return you all the memory you think for various reasons:

There is also the fact that all of the perl implementations I've worked with do not return freed memory to the OS - so if that's what you're looking for I'm afraid you're out of luck.