AngularJS: fixed typing of the ng.IPromise.then function

The type definition for ng.IPromise.then was, in my opinion, incorrect
semantically, and breaking on practical examples in my codebase.

An `IPromise`' `then` function takes a callback which is called with the
value of the promise once it's fulfilled. This could be a number, a
string, some object, an array of strings, anything really. Yet the
typing in angular.d.ts specified `then` as taking a `successCallback` of
type `(response: PromiseCallbackArg) => any`.

The definition of `PromiseCallbackArg` seems very permissive at first
glance, as it is defined to be an object with a bunch of fields, all
optional. Any object, a number, and a string all type check correctly
with such a type, but an array of strings, for example, does not
(`cPromise` in the provided list of test).

Furthermore, it seems to me that the `PromiseCallbackArg` definition was
added specifically to support the response type for promises returned by
the Angular `$http` service, the `ng.IHttpPromise`.

So instead of having an incorrect type on the `ng.IPromise.then` function,
I propose we return it to its generic form, and instead override the
type of the inherited `then` function in the `ng.IHttpPromise` interface.
This would also warrant renaming `PromiseCallbackArg` to
`IHttpPromiseCallbackArg`.
Merge pull request #407 from anchann/master

AngularJS: fixed typing of the ng.IPromise.then function
Changed reject to be 'any' per angular docs
Merge pull request #410 from jwcarroll/master

Updated IDeferred.reject per Angular docs
Update definition file for durandal.d.ts

- Make applicationHost parameter optional in setRoot
- Add missing activeRoute definition
- Add missing useConvention definition
- Add missing handleInvalidRoute definition
- Change mapRoute definition so you can pass an URL with all the other
parameters as you will usealy do or you pass a RouteInfo object without
having to give it any other parameter. moduleId, name and visible are
now optional.
Add backgroundpositionClass to definition

Add backgroundpositionClass to ToastrOptions interface
Merge pull request #411 from maroy1986/master

Add missing/change definition in durandal/durandal.d.ts
Added type definitions that expose q as a CommonJS module. Under Qnode folder.
Moved q declaration for CommonJS to qcommon
Google Maps: StreetViewService should be a class
jQuery: JQuery string indexer return type fix
Merge pull request #413 from qcz/smallfixes2

jQuery and Google Maps fixes
Remove qcommon and added q.module.d.ts which declares a module 'q'. Also added a couple jasmine style tests.
Slight change to makeNodeResolver in q.d.ts and added a second declaration for it in jasmine to accomodate 'done' function for async funciton calls.
Renamed q test file.
Merge pull request #412 from AndrewGaspar/master

q for CommonJS
Q definitions updated
Q definitions updated
Merge pull request #415 from Diullei/master

Q definitions updated
Merge pull request #1 from borisyankov/master

Merging upstream changes