Redesigned FPSController

Closes https://github.com/PistonDevelopers/cam/issues/6