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)

pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE;
    } else {
      pendingRequest.expectedStatus = OK_RESPONSE;
    }
    xhr.responseType = "arraybuffer";
    if (args.onError) {
      xhr.onerror = function (evt) {
        args.onError(xhr.status);
      };
    }
    xhr.onreadystatechange = this.onStateChange.bind(this, xhrId);
    xhr.onprogress = this.onProgress.bind(this, xhrId);
    pendingRequest.onHeadersReceived = args.onHeadersReceived;
    pendingRequest.onDone = args.onDone;
    pendingRequest.onError = args.onError;
    pendingRequest.onProgress = args.onProgress;
    xhr.send(null);
    return xhrId;
  }
  onProgress(xhrId, evt) {
    const pendingRequest = this.pendingRequests[xhrId];
    if (!pendingRequest) {
      
      return;
    }
    if (pendingRequest.onProgress) {
      pendingRequest.onProgress(evt);
    }
  }
  onStateChange(xhrId, evt) {