public bool ShowNextFrame()
        {
            Log.Debug($"ShowNextFrame() #{_displayIndex}");

            BoardFrame frame = _frames[_displayIndex];

            _view.Display(frame);

            _displayIndex++;

            return(_displayIndex < _frames.Length);
        }
        /// <summary>
        /// Parse input from user in the big state machine
        /// </summary>
        /// <param name="input">string input from user</param>
        public void ParseInput(String input)
        {
            switch (state)
            {
            case State.start:
                boardView.Display("Player 1, enter your identifier <name:symbol>");
                state = State.player1;
                break;

            case State.player1:
                Player1(input);
                break;

            case State.player2:
                Player2(input);
                break;

            case State.game:
                ParseMove(input);
                break;

            case State.end:
                End(input);
                break;
            }
        }