One of the recent releases of emsdk moved its GL-related utility methods into an object called GL, previously it exposed them directly. This change also makes it so that we create the WebGL 2.0 context and register it with emscripten, rather than the other way around. Note that our CI does "emsdk activate latest", not sure when this broke exactly.