docs($q): implement the same example for constructor as deferred

The current documentation has a `return` in the middle of nowhere and somewhat complicates the example with unnecessary code. This implements the same code as in the example for the other way of using $q in order to simplify the differences between them.
test(ngMock.$httpBackend): add tests for the existence of `when` shortcut methods

Closes #9322
docs(select): make more explicit that track by+select as will throw an error

Closes #9503
test($route): fix typo in test description

Closes #9541
feat($anchorScroll): support a configurable vertical scroll offset

Add support for a configurable vertical scroll offset to `$anchorScroll`.

The offset can be defined by a specific number of pixels, a callback function
that returns the number of pixels on demand or a jqLite/JQuery wrapped DOM
element whose height and position are used if it has fixed position.

The offset algorithm takes into account items that are near the bottom of
the page preventing over-zealous offset correction.

Closes #9368
Closes #2070
Closes #9360
chore(docs): apply the anchorScroll offset feature to the docs app

Closes #9360
fix($anchorScroll): add missing tests and do overall clenup

Add tests for <body> with border/margin/padding and boxSizing.
Simplify and fix a couple of bugs.
test($anchorScroll): refactored tests to make them more "unit"-like

Mock `getBoundingClientRect()` method of elements in tests, instead of
relying on the browser to actually size and scroll the elements.
fix($anchorScroll): use the `load` event instead of `readystatechange`