Added coverage for TestNG suites processing
Test infrastructure changes - failing fast when output event cannot be dispatched

In scenarios that testId is null the messaging infrastructure may be brought down and cause the build to stall. See issue GRADLE-3190 and GRADLE-3191
caching classloaders integ test - fixes

Changed the code so that for the non-daemon executions we're not forking an extra process. Otherwise the execution of the entire performance suite is very slow.
added more logging to perf tests
perf tests - ensured daemon is only stopped when we use the daemon
tweaked the classloaders caching perf test