public GameState Trade(int otherPlayer)
{
if (!valid) throw new IllegalActionException("Tried to perform an action on an invalid GameAction");
if (!isAfterDieRoll) throw new IllegalActionException("Tried to trade before the die roll");
return controller.CompleteTrade(player, otherPlayer);
}