docs($http): add more info about transform function
chore(Grunt): don't remove root dir from zip
chore(Grunt): include dot files in the final zip
docs(contribute): add note about running command line as admin on win
feat(angular.bootstrap): support deferred bootstrap

This features enables tools like Batarang and test runners to
hook into angular's bootstrap process and sneak in more modules
into the DI registry which can replace or augment DI services for
the purpose of instrumentation or mocking out heavy dependencies.

If window.name contains prefix NG_DEFER_BOOTSTRAP! when
angular.bootstrap is called, the bootstrap process will be paused
until angular.resumeBootstrap is called.

angular.resumeBootstrap takes an optional array of modules that
should be added to the original list of modules that the app was
about to be bootstrapped with.
feat(http): set custom default cache in $http.defaults.cache

When we need more control over http caching, we may want to provide
a custom cache to be used in all http requests by default.

To skip default cache, set {cache: false} in request configuration.
To use other cache, set {cache: cache} as before.

See #2079
docs($resource): Added an installation section.
fix($route): make nextRoute.$route private

the `nextRoute` object available in `$routeChangeStart` handler
accidentaly leaked  property which pointed to the route definition
currently being matched.

this was done just for the internal needs of the `$route` implementation
and was never documented as public api.

Some confusion arouse around why the $route property was not always
available on the `nextRoute` object (see #1907). The right thing for us
to do is to prefix the property with $$ for now and refactor the code
to remove the property completely in the future. Application developers
should use the `nextRoute` object itself rather than its `$route` property.
The main diff is that nextRoute inherits from the object referenced by $route.

BREAKING CHANGE: in $routeChangeStart event, nextRoute.$route property is gone.

Use the nextRoute object instead of nextRoute.$route.

Closes #1907
test($route): add tests for matching 'otherwise' routes
feat(directive): add ngKeypress directive for handling keypress event
docs(directive): minor typo fix

Changed "obeject" to "object"
docs($injector): remove extranneous 'the' from injector docs
chore($ngLocale):  Generate ngLocale files from the Closure code.
docs(ngCloak): update the CSS rule with data-ng-cloak
feat(ng:switch): Preserve the order of the elements not in the ng-switch

Preserve the order of the elements that are not part of a case nor default in
a ng-switch directive

BREAKING CHANGE: elements not in the ng-switch were rendered after the
    ng-switch elements.  Now they are rendered in-place.

    Ng-switch directives should be updated with non ng-switch elements
    in render-order.  e.g.

    The following was previously rendered with <li>1</li> after "2":

    <ul ng-switch="select">
        <li>1</li>
        <li ng-switch-when="option">2</li>
    </ul>

    To keep the old behaviour, say:

    <ul ng-switch="select">
        <li ng-switch-when="1">2</li>
        <li>1</li>
    </ul>

Closes #1074
fix($location): correctly rewrite html5 url to hashbang url

In situations where path() matched basepath and we needed to
convert from html5 url to hashbang url, the $location service
considered the url to be already rewritten, which resulted in
an error.
chore(Gruntfile): run webserver on 0.0.0.0

... so that we can access it from local VMs.

The security risk of doing this is very low since only the current
working directory is being made accessible to everyone. There is also
an option to run a local firewall, which is a better way to secure the
developer's machine anyway.
docs($injector): correct misuse of $inject

$inject was used where $injector was appropriate; confusing and
misleading.
feat(ngMobile): add ngMobile module with mobile-specific ngClick

Add a new module ngMobile, with mobile/touch-specific directives.
Add ngClick, which overrides the default ngClick. This ngClick uses touch
events, which are much faster on mobile. On desktop browsers, ngClick
responds to click events, so it can be used for portable sites.
chore(docs): add angular-mobile.js to index.html