When you want to have an audioContext singleton but don't want to rewrite [this code](index.js), use this. Deals with browser differences in AudioContext and maintains the singleton.
A callback wrapper that will handle adding things passed to the callback to a 'channel'. A channel is an object that is being passed throughout a callback chain. Each callback may add things to that channel and look up things in that channel.
A callback for `request` that will: 1) Check status codes and call your callback with an error if necessary and 2) pass the body to your callback if everything is OK.