Initial stable release of Statesman. Hear me and rejoice.
Added
* State machines have optional history tracking via the `statesman.HistoryMixin`
module.
* State machine transitions can be explicitly sequenced via the `statesman.SequencingMixin`
module.
* The functionality of the `enter_state` method can now be constrained via the
nested config class. This enables state machines to be restricted to
operating purely through transitions.
* Guard behaviors can be configured via the `guard_with` option. This enables
guard actions to operate silently, exceptionally, or emit warning log
messages.
* The `triggerable_events` method can be used to retrieve a list of events that
can be triggered from a given state.
* Decorators now utilize the formatted docstring of the function they are
wrapping to set the description of the state/event/action.
* State machine objects now support inheritance.
* The `enter_state` and `exit_state` decorators now support attaching a handler
to multiple states at once.
Changed
* The `trigger` method has been renamed to `trigger_event`.
* The `can_trigger` method has been renamed to `can_trigger_event`.
* Description arguments have been removed from the positional argument list of
decorators.
* Guard actions are now run sequentially in registration order rather than
being gathered asynchronously.