REVIEW-2473 Fixed the logic that decided whether the next long running operation is reentrant or not. Should fix the build.
mention ConfigurationContainer.create in DSL docs (add is deprecated)
Revert "mention ConfigurationContainer.create in DSL docs (add is deprecated)" (not sure how to document inherited methods in DSL docs)

This reverts commit 348fd87e3291b98bd0cbc95679c33af75153eeca.
Changed the c++ model to use LanguageSourceSet instead of native-specific SourceSet interface.
REVIEW-2472 Removed dead field from the class. I've tried to rework the test to make it more maintainable (it had lots of mocky interactions and was feeling like an integ test). It's now about 30% smaller yet I think it still has sufficient unit coverage.
Fixed the problem with the cache operations class. The long running operations could not interleave (leading to IllegalStateException). Now the calculation if the long running operation is reentrant should be correct.
Add test case to assert that test results/reports are considered outputs.

This wasn't broken, but we didn't have an explicit test for it.
Invalidate object files and binaries when the tool chain or target platform changes.

Added ToolChainInternal.getOutputType() which returns a unique id for the output it will produce. This id encodes whatever platform specific and tool chain specific details are relevant to the tool chain implementation.
Fixed javadocs.
Removed unused exclude.
Added `Ear` task to user guide section on dealing with archives.
Some spec updates.
Add missing @deprecated tags to old Test report/results stuff and normalise the messages.
If we aren't generating a HTML report, display the URL to the XML results in the error output.
Sonar plugin should be using the XML test results, not the HTML results.
Test that test reports are showing up in the build dashboard.
Add javadoc content for checkstyle.
Make the test reports a container of the more general Report.
Test fix.
Explicitly test for the test reports in the build dashboard report.