Added Common JS, Require JS and Global support

Hi,

Currently it is not possible to use fetch in a workflow. You have to load it separately and that is kind of a pain. With these changes fetch still loads Globally, but if using browserify, webpack etc. it loads as a module. In requirejs you do not have to shim, you load it as any other library. It can also load in Node, though Promises is not natively available until next (0.11.13) version.

Of course "fetch" is a polyfill for the global fetch method, but since it is an NPM module, my opinion is that it should support using it like the others. Logic is from browserify "standalone". 

Thanks for building it :-)