Massive refactoring, with second joystick