Instead of registering transition listeners for each individual transition separately,
you can provide an object as the machine walker, which walks along the edges between
states. When a transition is performed, the method named after that transition on the
walker object will be triggered, just like a transition listener.
The attach() method is used to associate a walker with the state machine.
You can define an optional _catchall_() method on your walker object to
monitor those transitions you didn’t explicitly catch through a method.
The _catchall_() method follows the same signature of global listeners.