Prevent tests from invoking System#exit by installing NoExitSecurityManager

Calling `System#exit` causes an unexpected exception reading from the worker process. The tests do not fail cleanly and subsequent tests that should have run in in the same worker VM are not run. This change prevents calling `System#exit` by installing a custom security manager. In the unlikely event of another security manager already installed, we don't do anything because the installed `NoExitSecurityManager` (from ant-optional) doesn't support nesting another `SecurityManager`.