docs(jqLite): clarify that Debug Data must be enabled for scope/isolateScope methods

Closes #9515
Closes #10123
feat(ngModelController): add $setDirty method

- extract existing functionality to public method: $setDirty
- add tests to corresponding changes
- refactor code to use extracted method

Closes #10038
Closes #10049
doc(ngModelController): move example below members
docs(CHANGELOG): update changelog with 1.2.27
docs(ngModelController): update wordings, add more general info

The wordings in setDirty etc. were specific to inputs, but ngModelCtrl
is agnostic to this and the preferred term is 'control'. I also
added some more info about this to the description, and linked to
the example that now lives at the bottom of the page.
docs($httpProvider): add info about `defaults.cache`

Closes #10134
fix(input): call $setTouched in blur asynchronously if necessary

If the model is blurred during an apply it should trigger
$setTouched asynchronously.

Fixes #8762
Fixes #9808
Closes #10014