Exports for Node.js and Browserify

Has backwards compatibility for the old `require()` API. If we're in the browser, export as a standard global object.
is there a reason to have the `**` around Node.js?