+ node.js compatibility
+ require options (use window as exports)
* remove node.js compatibility
+ core extensions support