Refactoring nearly finished, see notes

* renamed State's property 'name' to 'sig'
* 'name' is now getter/setter with functionality to parse 'sig' tuple
* renamed _get_state_by_name to _get_state_by_sig
* changed State's __getitem__ to __iter__ since 'states' is now a list
* Action inherits from namedtuple for easier == between two actions
* most of tests pass, only submachine functionality left failing