test(ngRepeat): add test for issue #1076
fix(ngRepeat): attempt to simplify and improve existing fix for #933

I'm keeping this in for future reference. The issue with this solution
is that if we shift() the first item in the array, the whole repeater
DOM will be rebuilt from scratch, we need to do better than that.
test(ngRepeat): clean up and improve tests
fix(ngModel): sync ngModel state with scope state

In cases when we reuse elements in a repeater but associate
them with a new scope (see #933 - repeating over array of
primitives) it's possible for the internal ngModel state and
the scope state to get out of sync. This change ensure that
the two are always sync-ed up even in cases where we
reassociate an element with a different (but similar) scope.

In the case of repeating over array of primitives it's still
possible to run into issue if we iterate over primitives and
use form controls or similar widgets without ngModel - oh well,
we'd likely need a special repeater for primitives to deal
with this properly, even then there might be cornercases.

Closes #933
fix(ngRepeat): support mostly-stable repeating for primitives

I'm reverting changes that were originally done to ngRepeat to fix #933,
because these are now not necessary after the previous changes to keep
ngModel always synced with the DOM.
style(jqLite): better variable names

selector => cssClasses
fix(ngClassOdd/ngClassEven): support shrinking/reordering in repeaters

We need to watch $index in addition to cssClasses because only then
we can correctly respond to shrinking or reordered repeaters.

Closes #1076
chore(validate-commit-msg): recognize 'revert' as valid commit type
fix($location): reset $location.$$replace with every watch call

Closes #1111
fix($http): remove 'X-Requested-With' from header defaults

X-Requested-With header is rarely used in practice and by using
it all the time we are triggering preflight checks for crossdomain
requests.

We could try detecting if we are doing CORS requests or not, but
it doesn't look like it's worth the trouble.

BREAKING CHANGE: X-Requested-With header is not set by $http service
any more. If anyone actually uses this header it's quite easy to add
it back via:

```
myAppModule.config(['$httpProvider', function($httpProvider) {
    $httpProvider.defaults.headers.common["X-Requested-With"] = 'XMLHttpRequest';
}]);
```

Closes #1004
fix($http): only set X-XSFR-TOKEN header for same-domain request

This is needed to prevent CORS preflight checks. The XSFR token
is quite useless for CORS requests anyway.

BREAKING CHANGE: X-XSFR-TOKEN is no longer send for cross domain
requests. This shouldn't affect any known production service.

Closes #1096
docs(CHANGELOG): release notes for 1.0.3 and 1.1.1 releases
chore(release): cutting the 1.1.1 pathological-kerning release
chore(release): start 1.1.2 tofu-animation iteration
feat($resource): allow dynamic default parameters

Default resource params can now be calculated at runtime if defined
via a function.
docs(menu): fix the navbar drop down links
fix(docs): add missing </div> tag to sourceEdit directive template
docs(directive): correct expression, fix typo and re-wrap lines
fix(Scope): ensure that a scope is destroyed only once

Due to bd524fc4 calling $destroy() on a scope mupltiple times cases NPE.

Closes #1627
refactor($resource): fix indentation and move a method definition

Moved Resource.bind out of the actions forEach