# Functions
NewStateMachine returns a Machine, it must be set up with calls to "AddTransition(s1, s2, predicate)" before Reconcile is called.
# Variables
No description provided by the author
# Interfaces
Loader should return the value saved by Saver.
SaveLoader can both load and save the name of a state.
Saver saves the next state name that should be reconciled.
# Type aliases
TransitionPredicate is used to indicate if two States should be connected.