Just a note, if you destroy an object, anything to do with it - behaviors or things you added to it, like hinges) should be removed automatically. It shouldn't be possible to cause a memory leak, without doing something like adding to a hash table/creating loads of objects (and not destroying them). If you come across a leak, make sure you report it.