feat(ngMock): add support for creating dynamic style sheets within test code
fix($animate): only execute a timeout when transitions or keyframe animations are used

ngAnimate causes a 1ms flicker on the screen when no CSS animations are present on the element.
The solution is to change $animate to only use $timeouts when a duration is found on the element
before the transition/keyframe animation takes over.

Closes #3613
fix($animate): skip ngAnimate animations if the provided element already has transitions/durations attached to it

Closes #3587
chore: reorganize test helper files under test/helpers
chore: run more browsers on Travis (IE8,IE9,IE10,Safari,FF)

Also instead of running everything in parallel, there are only two parallel tasks:
- e2e tests running in the background (only on Chrome)
- all the unit tests running sequentially
chore: use only polling on Travis/SL
chore(travis): clean up logs

Forward SauceConnect logs and Karma debug logs into a file and print these files at the very end of a build.