Test side-effect-free evaluation of WebAssembly APIs

Running test: testWebAssemblyGlobal
someGlobalGlobal.value: ok
someGlobalGlobal.valueOf(): ok
new WebAssembly.Global({value: "f32", mutable: true}, 3.14): ok
new WebAssembly.Global({value: "f32", mutable: false}, 3.14): ok
new WebAssembly.Global({value: "f32", mutable: true}, 3.14).value: ok
new WebAssembly.Global({value: "f32", mutable: true}, 3.14).valueOf(): ok

Running test: testWebAssemblyInstance
someGlobalInstance.exports: ok
new WebAssembly.Instance(someGlobalModule): ok
new WebAssembly.Instance(someGlobalModule).exports: ok

Running test: testWebAssemblyMemory
someGlobalMemory.buffer: ok
new WebAssembly.Memory({initial: 1}): ok
new WebAssembly.Memory({initial: 1}).buffer: ok

Running test: testWebAssemblyModule
WebAssembly.Module.customSections(someGlobalModule, ".debug_info"): ok
WebAssembly.Module.exports(someGlobalModule): ok
WebAssembly.Module.imports(someGlobalModule): ok
new WebAssembly.Module(EMPTY_WASM_MODULE_BYTES): ok
WebAssembly.Module.customSections(new WebAssembly.Module(EMPTY_WASM_MODULE_BYTES), ".debug_info"): ok
WebAssembly.Module.exports(new WebAssembly.Module(EMPTY_WASM_MODULE_BYTES)): ok
WebAssembly.Module.imports(new WebAssembly.Module(EMPTY_WASM_MODULE_BYTES)): ok

Running test: testWebAssemblyTable
someGlobalTable.get(0): ok
new WebAssembly.Table({element: "anyfunc", initial: 1}): ok
new WebAssembly.Table({element: "anyfunc", initial: 1}).get(0): ok
