A library to attach to state machines so that scenarios can be replayed