Adding a key system for Gates and stuff (on top of the existing Button system which is now over-rided by keys) I can also have other conditions like a specific number of enemies need to be killed before they open.

Need to fix the collision detection.