Refactored player_move to handle player input