Improves SC.State performance by removing expensive observers.

SC.State had two `observes` helper functions used to be notified when its `enteredSubstates` and `currentSubstates` arrays change. Since these arrays are modified by the owner statechart, the observers needed to be chained enumerable observers. However, this resulted in slower object initialization for each state object and excess observer firing as the entered and current substates change. Instead, we simply notify the target state directly each time that the statechart makes a change to its `enteredSubstates` and `currentSubstates`.

Benchmarks:
  initStatechart in unit tests: ~21ms to ~13ms (~38% faster)
  initStatechart in large application: ~81ms to ~51ms (~37% faster)