Shallow history representation
Inheritance: State
		public static State GetDeepState(HistoryState historyState, TransitionEvent transitionEvent)
		{
			return transitionEvent.SourceState;
		}
		public State Build(State parent)
		{
			HistoryState state = new HistoryState(parent, historyStrategy);

			return state;
		}
		public static State GetShallowState(HistoryState historyState, TransitionEvent transitionEvent)
		{
			State sourceState = transitionEvent.SourceState;
			return historyState.Parent.GetSubstatePath(sourceState);
		}
		protected HistoryStateBuilder(IStateBuilder parent, HistoryState.HistoryFetchStrategy historyStrategy)
		{
			this.id = new HistoryStateId(parent.Id);
			this.historyStrategy = historyStrategy;
		}