fix(Grunt): also remove \r chars when joining files
fix(ngClass): should remove classes when object is the same but property has changed

If you wire up ngClass directly to an object on the scope, e.g. ng-class="myClasses",
where scope.myClasses = { 'classA': true, 'classB': false },
there was a bug that changing scope.myClasses.classA = false, was not being picked
up and classA was not being removed from the element's CSS classes.

This fix uses angular.equals for the comparison and ensures that oldVal is a copy of
(rather than a reference to) the newVal.
docs($q): fix incorrect @returns tag for $q.when()
docs(guide.unit-testing): fix typo
fix(ngPattern): allow modifiers on inline ng-pattern

Add support for regex modifiers on inline `ng-pattern`.
`ng-pattern="/regex/i"` now validates correctly.

Closes #1437
docs(injector): fix typo in inlining example

The actual invoke call in the documentation was referring to the non-existent tempFn instead of tmpFn
docs(directive guide) typo in compile/link section

The code snippet shows `{{action.description}}`, the explanation referred to it as `{{action.descriptions}}`.
doc(ngClassEven): make consistent with ngClassOdd
fix(ngModel): use paste/cut events in IE to support context menu

In IE the model is not updated when the input value is modified using the context
menu, e.g. pasting from the clipboard, or cutting all or part of the current value.
To capture these changes, we bind to the proprietary 'paste' and 'cut' events.

Closes #1462
fix(i18n): escape all chars above \u007f in locale files

Modify the script that writes the locales so all characters above \u007f are escaped
Includes the updated locale files after running the closureI18nExtractor.

Closes #2417
test(modules): fix module tests which got disabled by ngMobile

When ngMobile was merged in, we accidentaly included angular-scenario.js
in the test file set for modules. Loading this file overrode jasmine's
`it` and `describe` global functions which essentially disabled all of
~200 unit tests for wrapped modules.

This change refactors the code to run the wrapped module tests.

I had to extract browserTrigger from scenario runner in order to achieve
this without code duplication.
docs(ngBind): fix typo
docs(select): fix attribute documentation

Select documentation was still referring to binding to name, when it should be ng-model instead. Fixed it.
docs(input): fix typo on max attribute
docs(overview): correct the input validation example

The documentation says that the input should be red if you enter
invalid values or leave it blank. Because the type="integer" is not
supported this does not happen in practice.  This fix changes the
input type to number and adds an ng-pattern to ensure that the number
is an integer.
docs(concepts): fix spelling error
feat(ngIf): add directive to remove and recreate DOM elements

This directive is adapted from ui-if in the AngularUI project and provides a complement
to the ngShow/ngHide directives that only change the visibility of the DOM element and
ngSwitch which does change the DOM but is more verbose.
chore(ngDoc): fix a typo with IE warning
docs(guide): minor grammatical change
docs(forms): fix typo