Changes to allow Transitions to be assigned to CompositeStates.
Includes major refactoring to how Transitions are defined.  Transitions
no longer store a reference to where they are transitioning from since a
Transition may now be assigned to an entire CompositeState.