Added state machine to player; refactored update methods