feat($httpBackend): add timeout support for JSONP requests

Documentation implies that timeout works for all requests, though it
only works with XHR. To implement:
- Change $httpBackend to set a timeout for JSONP requests which will
immediately resolve the request when fired.
- Cancel the timeout when requests are completed.
fix(ngController): allow dots in a controller name

The issue was introduced in cd38cbf975b501d846e6149d1d993972a1af0053
test(controller): instantiate controller defined on window

Just adding a missing spec.
feat(ngTap): Add a CSS class while the element is held down.
docs(injector): fix typo

Closes: #2551
test(ngAnimate): also provide W3C transition property to work on IE10

Closes: #2492
fix($location): back-button should fire $locationChangeStart

Before $locationChangeStart event is not broadcast when pressing the back-button on the browser.

Closes #2109
fix(ngList) Fix model to view rendering when using a custom separator

This change adds a new ng-list-joined-by attribute to the ngList directive.
This allows you to specify a custom string to join elements of the model
array together which is useful when you are also using a custom separator.

Example:

    <input type="text" ng-model="model.values" ng-list="|", ng-list-joined-by=" | ">

This will split an input string such as "Cat | Mouse | Dog" into the array
["Cat", "Mouse", "Dog"] and vice versa.