Make TestExecutor public to support test setup and cleanup in javascript.

* Changed the TestExecutor class to public, and the RunTest method to public.
* Removed the 'return' statement from TestCase.ToScriptFragment, which prevents any cleanup script from running.

These changes allow setup/cleanup scripts to be specified in an executor, and TestScript.RunTest(TestExecutor) can run setup/cleanup scripts, in addition to tests.