Fix to support UMD (Universal Module Definition) pattern

Fix support of UMD. See https://github.com/umdjs/umd/blob/master/returnExports.js

Estraverse could be used not only from browsers or nodejs, but also from embedded javascript engines (like V8). Such engines does not have global "window" variable. So global scope should be an argument in module definition.