webgl entry point -- requires emscripten!