chore(build): bugfix for script utils
test(docs): add protractor tests for docs app

Closes #5437
revert: fix($location): return '/' for root path in hashbang mode

This reverts commit 63cd873fef3207deef30c7a7ed66f4b8f647dc12.

The change breaks existing tests of Google apps. The problem is that
while we tried to avoid adding #/ to window.location.href unnecessarily
we failed doing so. Likely because by setting $path, at some point
(during a digest) we try to check if $location changed and we mistake the
default '/' with an explicit settign of the path via the `path()` method.
This results in us writing the url with '#/' into $browser.url() which updates
the window.location by adding "#/" to the url - something we tried to avoid
in the first place.

I'll reopen PR #5712.
docs($location): fix link to $locationChangeSuccess event

Closes #5717
docs(\$resource): fixed typo (s/seapph/search)

Closes #5718
docs: fix the 'view source' button for snapshots

Closes #5590
Closes #5641
fix($http): return responseText on IE8 for requests with responseType set

Closes #4464
Closes #4738
Closes #5636
feat(select): allow multiline ng-options

This patch allows the ng-options value of a <select> element to span
multiple lines, which would previously throw an error when used with filters.

Closes #5602
docs(select): update regexp grouping cheat-sheat

Update the regexp grouping comment to reflect the changes needed for
multiline expressions in ng-options for <select>.

Closes #5602
fix($rootScope): prevent infinite $digest by checking if asyncQueue is empty when decrementing ttl

An infinite $digest loop can be caused by expressions that invoke a promise.
The problem is that $digest does not decrement ttl unless it finds dirty changes;
it should check also if asyncQueue is empty.
Generally the condition for decrementing ttl should be the same as the
condition for terminating the $digest loop.

Closes #2622