fix($parse): do not use locals to resolve object properties

Do not use the locals when performing a field access in an angular expression.

Closes #5838
Closes #5862
docs(guide/controller): fix duplicated "and" typo

Remove the second instance of the word "and" from the docs where it was duplicated.
docs(tutorial): fix grammar

Closes #5909
docs(tutorial): remove 'going forward' nonsense

Closes #5914

time/space dimension error
fix(ngRoute): pipe preceding route param no longer masks ? or * operator

Before this change,

```js
$routeProvider.when('/foo/:bar|?', { ... });
```

would not have the expected effect --- the parameter would not be optional, and
the pipe would not be included in the parameter name.

Following this change, the presence of the pipe operator will typically cause an
exception to be thrown due to the fact that the generated regexp is invalid.

The net result of this change is that ? and * operators will not be masked, and
pipe operators will need to be removed, although it's unexpected that these are
being used anywhere.

Closes #5920
docs(select): add object comparison warning
docs(select): add callout style for a note
chore(docs): add spacing to tutorial buttons

Added 5px of right margin to tutorial buttons (Previous, Live demom ...).

Closes #5901
style(guide/directive): remove ws
docs(guide/directive): clarify attr object definition

Closes #5884
docs(changelog): remove reverted commit from 1.2.9

Closes #5868
docs(tutorial): update step_12.ngdoc

This time I feel good about this modification to the document, the code listing
on the tutorial page for the animation.js DID NOT match what was actually IN the
file for that branch.  Updated tutorial to reflect actual contents of file

Closes #5922
fix(input): use Chromium's email validation regexp

This change uses the regexp from Chromium/Blink to validate emails, and corrects
an error in the validation engine, which previously considered an invalid email
to be valid. Additionally, the regexp was invalidating emails with capital
letters, however this is not the behaviour recomended in the spec, or implemented
in Chromium.

Closes #5899
Closes #5924
docs(ngMock): $log.error property contains messages from $log.error, not $log.log

Closes #5932
test(doc:protractor): turn off animation for doc end to end tests to speed things up
style($interval): remove ws and replace comma with semicolon
docs(ngRoute): grammar correction

grammar: occurs -> occur

Closes #5937
refactor(externs): move Closure Externs back to Closure code repository

While Closure Compiler generally recommends to maintain the externs for
projects together with their source, this has not worked well for
AngularJS:
- Changes to externs must be tested; they can break clients. AngularJS
  has no testing infrastructure for this.
- Changes mostly come from users inside of Google and are much more
  easily submitted together with the code using them within Google's
  repository.

This change deletes the externs here and adds a README.closure.md to
document the change. They will be added back to Closure Compiler in a
separate submit.

Closes #5906
fix(a): don't preventDefault on click when SVGAElement has an xlink:href attribute

Before this change, an SVGAElement with an xlink:href attribute and no href or name attribute which
was compiled by the angular HTML compiler would never be clickable, due to the htmlAnchorDirective
calling event.preventDefault() due to the missing href attribute.

This change corrects this behaviour by also testing the xlink:href attribute if the element in
question is determined to be an SVG anchor tag (with the href property having type SVGAnimatedString)

Closes #5896
Closes #5897
docs(ngdoc): ensure module installation docs are accurate

The ngMock module is built into a package called angular-mocks, which is
not named consistently and the docs were giving invalid info.

Closes #5810