Add Episode Class

Add Episode Class to represent an episode in episodic memory.

Also remove curious reset as it is no longer needed.
Update printStateMachine and add global state data

Priror ot this commit, the printStateMachine method did not format
the transition table very well, making it hard to read. Now the method
has been updated to print in a better format.

Additionally add the global data needed for the new algorithm we are
implementing in the agent.