Configuration:
- Web browser and its version: any
- Operating system and its version: any
- PDF.js version: 1.9.426

Steps to reproduce the problem:
 
Scenario 1 - network error on range-requests:
1. Load a mid size PDF (20MB) with range requests enabled (e.g. AWS S3 bucket - CORS configuation - ExposeHeader Accept-Ranges, ...)
2. While pdf.js is rendering pages, rename the source PDF

Scenario 2 - ERR_CACHE_OPERATION_NOT_SUPPORTED on Chrome > 61:
1. Load a mid size (20MB) PDF with range requests enabled (e.g. AWS S3 bucket - CORS configuation - ExposeHeader Accept-Ranges, ...) and no Cache-Control metadata

(Some pages won't be rendered because randomly some XHR range-request fail with status net:ERR_CACHE_OPERATION_NOT_SUPPORTED, detailed issue [here](https://github.com/mozilla/pdf.js/issues/9022) )

What is the expected behavior? 
Page render promise: the failure callback should be called on range request network errors, or an exception raised: 

```
page.render(context).promise.then(
    successCallback, 
    failureCallback
).catch(
    errorCallback
); 
```
Any of failureCallback or errorCallback should be called.

What went wrong? 

A rapid troubleshooting (on scenario 1) showed that the `onError` listener is not handled/binded  for `PDFDataTransportStreamRangeReader`

![missing-onerror-listener-on-range-requests](https://user-images.githubusercontent.com/7221909/42463262-e862680c-83a5-11e8-988e-0ffcf9b1a69e.png)

const args = {
      begin,
      end,
    };
    for (const prop in listeners) {
      args[prop] = listeners[prop];
    }
    return this.request(args);
  }
  requestFull(listeners) {
    return this.request(listeners);
  }
  request(args) {
    const xhr = this.getXhr();
    const xhrId = this.currXhrId++;
    const pendingRequest = (this.pendingRequests[xhrId] = {
      xhr,
    });
    xhr.open("GET", this.url);
    xhr.withCredentials = this.withCredentials;
    for (const property in this.httpHeaders) {
      const value = this.httpHeaders[property];
      if (typeof value === "undefined") {
        continue;
      }
      xhr.setRequestHeader(property, value);
    }
    if (this.isHttp && "begin" in args && "end" in args) {
      xhr.setRequestHeader("Range", `bytes=${args.begin}-${args.end - 1}`);