Don't attempt to run `jps` for the IBM jvm.
Replaced ToolingApi.isEmbedded with requireDaemons() to make clearer what the test expects, and to allow the fixture to choose between running the daemon from the classpath or a distribution based on the test suite.
Extracted ClassLoaderCache out of DefaultPayloadClassLoaderRegistry to allow them to live in different scopes.
Shuffled around the tooling api services on the daemon side, to introduce a global ClassLoader and jar cache and moved the serialization services to build scope.
Changed build action class loading in the daemon so that jars are copied into a cache under gradle user home dir, to avoid locking on windows and other oddness when the original jar is modified or deleted.
Tweak to how ClasspathUtil converts a URI to a File.
Should hold lock while copying file into cache.
Changed tooling API shutdown so that it requests daemons stop when they are idle, rather than forcing them to stop.
Javadocs