Fully implement push/pop transitions.  Further simplification of the
interface, eliminating the FiniteStateMachine interface, eliminating the
Fsm factory class, renaming FiniteStateMachineImpl to Fsm.  Added
convienence method to retrieve the context of the current FSM.