Some changes to generics to make IBM jdk 5 happy.
Some unit test fixes to make Java 5 happy.
Removed some old forkEvery settings that aren't required any more and that make execution slower.
Some minor spec edits.
Diagnostics tasks should always be considered out-of-date.
Fixed dependency report task so that it actually tests the dependency reporting (the task was always up-to-date).
Added some performance test coverage for first use of a build (actually just an approximation).
Collect build number as part of build receipt, and show build number and commit id in output of `gradle -v`.
Fix name of ConfigurableReport class.
Make Test implement Reporting.

The biggest change here is that we now consider the JUnit XML output a report, instead of a result. This also means that it shows up in the build dashboard.

The documenation for the Java plugin or the Test task has not been updated. There is also no test coverage that the newly deprecated API correctly delegates to the replacement.
Stream output events to disk in a binary format, where each output event is associated the test method name.

This extra information is not being used at this point.
Fix compile error due to class rename.
Fix compile error due to class rename.
Revert test changes.

More work needs to be done to update tests.
Added a performance DataReporter implementation that collects results in an H2 relational database instance. Not wired in yet.
Moved some performance test fixture classes around.
Extracted OperationTimer out of MeasuredOperation and added some unit test coverage for PerformanceTestRunner.
Added a very rough HTML test history report and wired it into the performance test execution.
Fleshed out performance test report to show average execution time and heap usage for each test execution.
Made PerformanceResults.baselineVersions a private field.