Delete objects in the reverse order they were created

Replaces #316.

*This must not be merged until documentation has been added to this pull.*