Refactored the InputManager, easy use and powerful