attempt to reproduce/polyfill/infill node.js vm#runIn<Some>Context() methods in browser - no guarantees