Transitions are now namedtuple, state renaming
All transitions merged into one trans dict
Tests for upcoming _get_response changes
Major refactoring in progress, see commit notes

* state_dict is now parsed non-destructively, creating new state instances.
* State.states after parsing is always a list of states, dict not used
  for State.states anymore, only for trans_dict
* removed CompositeState, State is used for all state types, differentiated
  by state.kind property
* HSM current state is now a set, needs to be able to reside in multiple
  states due to orthogonal regions (TODO to be implemented)
* _get_children removed (not needed)
* state names are now tuples so that submachines' states can be assigned with
  unique names (parent container state name is added as prefix)
* State takes actions as arguments along with class methods
* State has __eq__ for comparing two instances
* _reformat (formerly _rename) function too complex (TODO revisit)

test_helper_functions_structural is passing, rest are failing
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
Everything working