Major design change.  Controllers are stopped before controller resolvables are resolved.

This lets current controllers clean up before ANY part of the new state begins to load (such as resolvables). This is important, especially when reloading the same state. It's now easier for the application to be left in a state of limbo where controllers were stopped and a resolvable fails. The client must handle such a scenario.