Allow setting the timeout on HttpConnection.
HttpRequest::Done can receive a null request in case of timeout.
Add support for cancellation of HTTP requests.