initial groundwork for lobby interface

This adds a couple of pieces I need for the lobby script.

- Texture replacement in a Model by texture name
- HFActionEvent and HFBackEvent (these are meta events we define that can be fired via various input devices)
Ok... sounds reasonable.