Currently, formats have hardcoded data loading from external sources via URLs which limits the uses of the library. Instead, the raw URL (as it is in the file and/or sent by the user) should be sent back to a loader of some sort which might default to XHR but can be overrided, and essentially provides a load(src) -> Promise<ArrayBuffer|string> function for loading data from any source, including zips, custom buffers, etc.