implementing InputManager ( WIP )