XDomainRequest support for IE 8 and 9

IE 8+ has the XDomainRequest object that has the ability to make cross
domain requests, compared to XMLHttpRequest v1 which cannot. XDR has
significant limitations, but is useful in the right situation. Developers
should read and understand these limitation before they use
XDomainRequest.

http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx

IE 10+ supports XHR v2, which can make cross origin request following the
Cross-origin resource sharing (CORS) model. XDomainRequest is redundant
and overly restrictive in this environment.

A new client 'rest/client/xdr' and interceptor
'rest/interceptor/ie/xdomain' are introduced in this commit.

'rest/client/xdr' is a low level client, similar to 'rest/client/xhr'. It
handles the raw mechanics of making a request, parsing the response and
handling errors.

'rest/interceptor/ie/xdomain' is an interceptor that will use the xdr
client when needed. The environment must support XDomainRequest, and not
support XMLHttpRequest v2. The requested URL must also be to a different
origin. If all of these conditions fail, the xdr client is used instead
of the default xhr client.

If needed, this interceptor should be installed as close to the
interceptor chain root as possible. When the XDR client is needed, any
other interceptors in the primary chain are skipped. It is possible to
mimick the primary interceptor chain, by wrapping the XDR client in the
same interceptors and providing the resulting client as the 'xdrClient'
config property to the xdomain interceptor.

Issue: #17