feat($http): add support for aborting via timeout promises

If the timeout argument is a promise, abort the request when it is resolved.
Implemented by adding support to $httpBackend service and $httpBackend mock
service.

This api can also be used to explicitly abort requests while keeping the
communication between the deffered and promise unidirectional.

Closes #1159
chore(ngdocs): move angular-bootstrap.js to be generated only inside the docs and remove from the build process
fix(ngdocs): provide test code for syntax links in docs and fix the syntax directive for IE8
fix(ngdocs): fix gen_docs.sh