Added Player choices and validation

Broke a Player UnitTest for now, need to fully instanciate everything
needed by Player.IMReady() before reusing it.