Add index page to web test runner, showing all available tests. (#9325)

Progress on running IREE's tests on the web, now including support for `check` framework e2e tests.

![image](https://user-images.githubusercontent.com/4010439/171964654-48ded429-fe8e-46c3-b7db-5c6aa3738d67.png)

In this PR:

* Split `index.html` into `test-runner.html` and `index_template.html`. The test runner page runs a single test, while the index page lists all tests and launches individual tests using the test runner page in an `<iframe>` (you can also open the URLs in a new tab when iterating on a single test).
* Moved test scripts (`math_test.js`, `iree-check-module.js`, etc.) to a Worker
* Added a parser for the output of `ctest --show-only=json-v1` that builds a list of HTML elements to show on the index page

Still to do:

* Enable threading (check tests require hacking `--driver=vmvx` to `--driver=vmvx-sync` until fixed)
* Add a "run all" button and show test results on the index page (maybe caching logs with a rerun button)
* Fix the CSS :P

Co-authored-by: Geoffrey Martin-Noble <gcmn@google.com>
diff --git a/build_tools/cmake/iree_python.cmake b/build_tools/cmake/iree_python.cmake
index 3c1b705..a2967ad 100644
--- a/build_tools/cmake/iree_python.cmake
+++ b/build_tools/cmake/iree_python.cmake
@@ -200,7 +200,7 @@
 #   in the CMAKE_CURRENT_BINARY_DIR.
 # PACKAGE_DIRS: Python package paths to be added to PYTHONPATH.
 function(iree_local_py_test)
-  if(NOT IREE_BUILD_TESTS OR ANDROID)
+  if(NOT IREE_BUILD_TESTS OR ANDROID OR EMSCRIPTEN)
     return()
   endif()