fix(ngAnimate): correctly retain and restore existing styles during and after animation

Closes #4869
fix(tests): Correct tests for IE11

Some tests were wrong. However, src/* did not contain problems.

Fixes #5046
fix(ngInclude): Don't throw when the ngInclude element contains content with directives.

Related to #5069
fix(ngView): Don't throw when the ngView element contains content with directives.

Fixes #5069
fix(loader): expose `$$minErr` to modules such as`ngResource`

This is highlighted in angular-phonecat when you try to use the index-async.html
which needs to load the ngResource module asynchronously but fails when it tries
to call `angular.$$minErr` to create the $resourceMinErr object.

Closes #5050
fix(ngMock): fixes httpBackend expectation with body object

Fixes an issue with httpBackend expectations where a given body object
may not match the actual request body if its keys are serialized in a
different order.

Closes #4956
fix(httpBackend): should not read response data when request is aborted

When a request is aborted, it makes no sense to read the response headers or text.
Also in IE9, trying to read data (either response headers or text) from an aborted request
throws an Error c00c023f.

Fixes #4913
Closes #4940
fix($compile): secure form[action] & iframe[srcdoc]

Require bindings to form[action] to be $sce.RESOURCE_URL and bindings to
iframe[srcdoc] to be $sce.HTML

Closes #4927
Closes #4933
fix($parse): allow for new lines in expr when promise unwrapping is on

Previously, when unwrapping promises was set to `true`,
an error would occur if a parsed expression had a
new line in it.
This was because when generating the `evaledFnGetter` code,
a new line in an parsed expression would create a new line
in a JS string in that code, which is illegal. That is:
```js
pw("A+
B")
```

Closes #4718
test($compile): correct the assertion to make test pass on IE11
fix($httpBackend): only IE8 and below can't use `script.onload` for JSONP

IE8, IE9 and IE10 can use `script.onreadystate` so up till now we have been using this
if the sniffer says we are on IE.
But IE11 now does not support `script.onreadystate` and only supports the more standard
`script.onload` and `script.onerror`.
IE9 and IE10 do support `script.onload` and `script.onerror`. So now we only test whether
we are on IE8 or earlier before using `script.onreadystate`.
See http://pieisgood.org/test/script-link-events/

jQuery just uses all these handlers at once and hopes for the best, but since IE9 and IE10
support both sets of handlers, this could cause the handlers to be run more than once.

jQuery also notes that there is a potential memory leak in IE unless we remove the handlers
from the script object once they are run.  So we are doing this too, now.

Closes #4523
Closes #4527
Closes #4922
chore(style): fix missing indentation in httpBackend from a3172a2
docs(CHANGELOG): add release notes for 1.2.2 consciousness-inertia
chore(release): cut 1.2.2 consciousness-inertia release
chore(release): start 1.2.3 unicorn-zapper iteration
chore: update copyright year in file headers
chore(docs): remove Disqus comments

We don't actively moderate these comments, and they range from
out of date, to inflammatory, to spam. Going forward, improvements
to the docs should be done via a PR, and questions should go on
StackOverflow where they can be curated and kept up to date by
AngularJS developers who help out there.
fix(input): Support form auto complete on modern browser

Although modern browser support the "input" event, they still only fire
the "change" event when they auto complete form elements
other than the currently selected one.

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

Closes #5106
docs(CONTRIBUTING): consolidated submitting PRs sections