This interface must be implemented by any class that is used as an input to a FSM. The FSM only needs the identity of
this object, so all that is really needs is the default equals implementation. The toString() method should also be
overridden to give a concise description or name of the input.