Removed unused method.
Moved some test fixture code to the test sources.
Some refactoring before starting supporting quoted sys properties provided by org.gradle.jvmargs
Fixed tooling api tests after M8 upgrade. Inlined some string messages that we expected to see in logs. There's no good place for them so let's have them inlined.
Made the org.gradle.jvmargs support quoted system properties (that may contain spaces).
GRADLE-2099 - When starting a daemon, set -Dfile.encoding to the default encoding of the client jvm.

This is an interim/partial solution to make the daemon work with our build. The groovydoc task can only use the platform encoding which we need to be utf8, and we check for this. Because the daemon starter strips out any system properties that the daemon client was started with, the daemon is *always* going to use the platform's default encoding. This means that it's impossible to use the daemon with m8 and our build (if docs:groovydoc is going to be run).
GRADLE-2099,GRADLE-1618 - ensure that the daemon uses the desired default platform encoding.

The “desired platform encoding” is the client JVM's default platform encoding unless specified otherwise (via the JvmOptions class). If a daemon exists that is otherwise compatible except that it has a different platform encoding, a new one will be started.

We may want to add support for this to the tooling API (in the ProviderOperationParameters interface).

 There's a potentially significant implied change in here. We now use the current JVMs default character encoding as the default character encoding for all forked JVMs. In practice, this is not likely to be a functional change as this is usually defined by environment variables that the child process would inherit. However, now we explicitly enforce that the child process has the right encoding.
Update the wrapperNightly etc. code to deal with API change.
Update to m9 nightly so we can run the daemon with our build with a UTF-8 default encoding, which the groovydoc task requires.
Fixed bug in DependencyResolver identifiers, that caused incorrect cache values to be used for ResourceCollectionResolver instances
- Replaced WharfResolverMetadata.getId() with DependencyResolverIdentifier
- Use only ivypatterns and artifactpatterns + resolver type to generate unique resolver id (where possible)
- Continue to use resolver name to generate unique resolver id for unknown resolver types (this is not very good behaviour)
fixed test precondition
Fix groovydoc task so that it's incremental.
Process creating daemon always gets to use that particular daemon
- Creating process supplies UID for daemon process, which is part of DaemonContext
- Daemon's are initially registered as 'busy' on creation, awaiting connect from creating process
- After creating, DefaultDaemonConnector searches for busy daemon with matching UID rather than looking for idle daemon matching spec
-- Introduced DaemonStarter interface, replacing existing Runnable impls
-- Foreground daemon is current broken
Fixed Foreground daemon start() so that it marks the daemon as idle before completing
Change lost during merge
Merge branch 'GRADLE-796'

- changes from original contribution: code simplifications, polishing
GRADLE-2102 - Moved OperatingSystem to live in base-services project.
Daemon server logs the information about his log file in a way it is visible to the client. This improves debugging a lot.
Housekeeping, some refactoring.
Housekeeping, gc'ed old TODOs