Refactored handle selection from player and opponent.
Not tested for AI.
Refactored selection AI, Player and Opponent.