added a system for handling input directed to the player