Allow the test runner to not run transitively discovered tests.
Fix linting errors
Prevent the test runner from deadlocking.
Add empty folders when zipping directories.
Include files without providers in JsBinary targets.

This is required in order to build the FirefoxDriver in Selenium.