fix($animate): ensure blocked keyframe animations are unblocked before the DOM operation

Closes #5106
docs(CONTRIBUTING): consolidated submitting PRs sections
docs(CONTRIBUTING): highlight what makes a good issue submission
docs(CONTRIBUTING): fix typo
fix(ngAnimate): ensure animations are disabled upon bootstrap for structrual animations

Closes #5130
docs(CONTRIBUTING): add link to github-pr-helper
chore: add script for updating bower repos
chore(travis): let's give BrowserStack a try

Switch the build to use BrowserStack instead of SauceLabs.

This also adds IE11 to our build.
chore(travis): add some more info for BrowserStack sessions
refactor(angular.js): improve trim performance

According to Flagrant Badassery's blog
http://blog.stevenlevithan.com/archives/faster-trim-javascript
and this comparison http://jsperf.com/trim-function, this trim method is faster.

Closes #4406
docs(guide/scope): access the current element's scope in the console.

Closes #4884
docs(CONTRIBUTING): fix broken link to GitHub PR Helper

Closes #5134
docs(compile): fix typo

Closes #5133
chore(changelog): remove tmp file
chore(mocks): wrap angular-mocks.js in closure

Closes #5080
feat(jqLite): implement the `empty` method

jQuery's elem.html('') is way slower than elem.empty(). As clearing
element contents happens quite often in certain scenarios, switching
to using .empty() provides a significant performance boost when using
Angular with jQuery.