refactor($animate): use $animate.$$setClassImmediately to save code

The idea here is that the styles here are applied into the animation code (the CSS or JS code). When the CSS kicks in then the styles will be spread across the animation. This this lets directive-owners pass in their own styles that can then allow the user to animate in their own way.

If we use promises then the styles can't be applied in time for the transition to pick them up.