Adding args option to RunTestExecutable task for the native test suite
Updates to spec.
Spec updates
Integration test for combining ‘jvm-component’ and ‘java’ plugins in one project
Add convention for opting into stricter compile and enable it for model-core project.
Unify the late binding somewhat to avoid code duplication.

Might have to unpack this at some point for optimisation, but let's wait until we are measuring here.
added todo
Don't hang on to the on-fully-bound action after it has been fired so it and its dependents can be reclaimed.
Fully encapsulate ModelType's use of TypeToken.

ModelType will likely end up public so may as well avoid leaking Guava types now.
Add the failure exception itself, not its cause when running in process tests.

If the real exception thrown is a GradleException, it gets thrown as is.
Initial implementation of reporting on model rules that fail to bind.

It's not entirely accurate yet and the error output is insufficient.
Test fixes are API change.
Fix bug that prevented binding references with a path.
More test fixes after API change.
REVIEW-5028 Add implicit tasks to selectors.
REVIEW-5028 simpler TaskSelector implementation relying on adaptation.
REVIEW-5028 Task visibility mentioned in release notes.
Added spec for 'replaces' feature for modelling scenarios like the replacement of google-collections with guava. I called the spec 'conflict-resolution' because it seems it will be easiest to find.
Revert "REVIEW-5028 simpler TaskSelector implementation relying on adaptation."

This reverts commit 21d27e80e477471ad71d015962f891aa68e72469.
Fix Java 8 compile error.