Fixing `destroy()` when it receives `undefined` as a value to iterate on, implemented most of Quake 3 "best practices"