Fix CommonJS issues for contexts without `module` global

This pull request fixes issues #49 and #51 in CommonJS contexts that doesn't provide the `module` global by implementing a slightly tweaked version of https://github.com/umdjs/umd/blob/master/commonjsStrictGlobal.js

The adjustments made are just to pass in the expected `root` to still allow the jQuery version to work.
> I think that goes against the idea of AMD allowing you to keep the global namespace clean. What's the rationale behind this? If someone wants a global they can always export it themselves? But this could cause problems in places where AMD is used to avoid polluting the global namespaces, extensions and bookmarklets lets being a good example.

My work was based on https://github.com/umdjs/umd/blob/master/commonjsStrictGlobal.js ... I'll update it to use https://github.com/umdjs/umd/blob/master/commonjsStrict.js