docs(tutorial/step-4): fix e2e test

After a protractor update the test syntax had to be changed.

Closes #7919
docs(ngMessages): correct a typo

Closes #7918
fix(Angular): nodeName should always be lowercase

XHTML uses lowercase node names, while HTML often uses uppercase.  The
generally accepted convention is to always lowercase them.

Fixes #3987
docs($provide): it is a service not an object

Closes #7917
fix(input): escape forward slash in email regexp

This messed up with syntax coloring and variable hovering in chrome developer tools and made debugging really difficult.

Closes #7938
docs(ngSrc): srcset used instead of src for img attribute

In `ngSrc` documentation `srcset` is used instead of `src` as `img` element attribute in the example.

Closes #7951
docs(ngModelController): update setValidity

Needs to be `$error[validationErrorKey]!=isValid` and not
`$error[validationErrorKey]=isValid`.

See https://github.com/angular/angular.js/blob/master/src/ng/directive/input.js#L1627

Closes #7934
docs(guide/compiler): change {{user}} to {{user.name}} in example

If user has an `actions` property, it should be an object,
which means if you {{user}}, it'll print out the object.
fix(testabilityPatch): fix invocations of angular.mock.dump
chore(travis): declare Node.js version as '0.10', not 0.10 (which is 0.1)
fix($injector): check if a fn is an array explicitly

This change makes the code easier to read and also fixes a compatibility issue
with opal.js which pollutes the global state by setting $inject property on
Array prototype

Closes #7904
Closes #2653
fix(jqLite): convert NodeList to an Array to make PhantomJS 1.x happy

Closes #7851