public void run(IEvent e)
        {
            LOG.Info("Game initializing");

            LOG.Info("Init board state machine");
            this.gameStateMachine.setBoardMachine(new BoardStateMachine());
            this.gameStateMachine.getBoardMachine().addListener(this.gameStateMachine);

            LOG.Info("Init players state machine");
            PlayerStateMachine[] players = new PlayerStateMachine[2];
            players[0] = new PlayerStateMachine(this.gameStateMachine.getBoardMachine().getPieces(Board.Pieces.Color.BLACK));
            players[1] = new PlayerStateMachine(this.gameStateMachine.getBoardMachine().getPieces(Board.Pieces.Color.RED));
            players[0].addListener(this.gameStateMachine);
            players[1].addListener(this.gameStateMachine);
            this.gameStateMachine.setPlayers(players);
            //Uwhy don't consume initializedEvent? to get next state playing
        }
 public void setPlayers(PlayerStateMachine[] players)
 {
     this.players = players;
 }