IE 11 is giving me a hard time...

I'm trying to send some binary data as a `Uint8Array` in a POST request, but `[Object object]` gets sent instead. In IE's dev tools, inspecting the request body reveals that the `Uint8Array` is being transformed incorrectly as `[Object object]`:

![screen shot 2016-03-15 at 9 31 20 am](https://cloud.githubusercontent.com/assets/440299/13793569/b991e3ea-eab4-11e5-9901-f9adee6f1beb.png)

I tried commenting out some code to see if the request will send the correct data, and it does. I commented out these lines:

```
if (utils.isArrayBuffer(requestData)) {
  requestData = new DataView(requestData);
}
```

https://github.com/mzabriskie/axios/blob/master/lib/adapters/xhr.js#L162

... and the resulting request sent binary data as expected:

<img width="463" alt="screen shot 2016-03-15 at 7 14 07 pm" src="https://cloud.githubusercontent.com/assets/440299/13800038/27c28680-eae2-11e5-9718-512fcc078cd7.png">

What is the purpose of the `new DataView()` call? What is happening that turns the binary data into the `[Object object]` string? Why does this break only in IE 11 (works in Chrome, Firefox, Edge)?

lib/adapters/xhr.js
}
  
  if (config.responseType) {
    try {
      request.responseType = config.responseType;
    } catch (e) {
      if (request.responseType !== 'json') {
        throw e;
      }
    }
  }
  
  if (config.progress) {
    if (config.method === 'post' || config.method === 'put') {
      request.upload.addEventListener('progress', config.progress);
    } else if (config.method === 'get') {
      request.addEventListener('progress', config.progress);
    }
  }
  
  if (utils.isArrayBuffer(requestData)) {
    requestData = new DataView(requestData);
  }
  if (requestData === undefined) {
    requestData = null;
  }
  
  request.send(requestData);
};