""" This package contains implementations of a Finite State Machine, an abstract construct that holds a particular state and can transition between several defined states. These are useful for a range of logic programming tasks. """