Optimizes the observers on isVisible and isFirstResponder to be added when the view is attached and subsequently removed when the view is detached.
Also deprecates ariaHidden and sets it properly according to isVisible + current view state.
Adds _executeQueuedUpdates method to execute the content, layout and visibility updates when a view is about to be shown.
Fixes several issues with the shown and hidden substates.
Removes a lot of redundancy in view rendering and updating.  Previously, the update code would run applyAttributesToContext every time which would update several one shot properties: classNames, isTextSelectable, role and also update some properties that were doubly updated elsewhere: layerId, isVisible.  Now the one-shot portions are done in renderToContext, which is strictly a first time render method.
Fixes missing component of cancelAnimation that failed to clear pending animations, which would then appear in the next run loop.
Adds private _animateFrames method to animation code which will run a series of animations (i.e. frames) and fire the callback after the last animation.  This is used to create fancy animations using SC.View#animate, such as a bounce or wobble.
Adds BOUNCE_IN/OUT and SCALE_IN/OUT transitions for SC.View.  Fixes other transitions.
Updates the statechart diagram.