hooked up fps-style controls, which are awkward in this context, but were fun to implement