exception-handling was fairly broken. If one used a malformed url like
ssh://google.com for example, the error won't be presented when executing
the request. It just returned an exchange-object which when queried for
status, getUrl, and so on would have raised an exception because
connection is null. (Cannot call xy from null)
content, contentBytes, connection are all undefined and done is set to
true.

Now every exception thrown by java will cause the exchange-object to have
another property called exception holding the javascript exception which
itselfe holds the javaException.
Calls to getURL, getResponseMessage, headers, cookies, encoding,
contentType, contentLength, content, contentBytes, connection will just
return undefined instead of throwing an java-exception.
exchange.done will stay true as it has been before
exchange.status will be set to 0