Convert blobs in a way that works cross-browser

Trying to convert the output of readAsBinaryString to Uint8Array fails
in many browsers. Using readAsArrayBuffer instead appears to work in the
latest Chrome, Firefox, Safari and IE 11.