This state machine utility provides a simple tool for defining and working with state machines. It allows you to define a state machine (a set of states and a set of transitions between states) and allows you to track movement through the states.
For an example on how to use the utility, look at our "Sample Usage" document in docs.