Trimming Dead States

There were edge cases where the automata generated was creating states that violated the environment safety conditions. However these were dead-end states which did not have any outgoing transitions. This patch creates a function within the `LabeledDiGraph` class in `transys.labeled_graphs`, that can recursively remove the dead end states. It modifies the `synthesize` function in `synth` and adds a `bool_true` flag, which if `True`, allows for the removal of these states from the automata.