Player controller class to help manage player state