/// <summary>
        /// Adds a game state instance to the game state map.
        /// </summary>
        /// <param name="state">The state instance.</param>
        private void RegisterGameState(EngineState state)
        {
            if (state == null)
            {
                throw new ArgumentException("Cannot register a null state!");
            }
            StateId id = state.GetId();

            _gameStates.Add(id, state);
        }