GRADLE-3133 Limit ssh authentication methods to password and do only one login try
GRADLE-3107 : Don't re-check repository for missing module every 24 hours

- If no other repository has the module (prefer to search than fail)
- When run with —refresh-dependencies

Inspired by https://github.com/gradle/gradle/pull/298
Code formatting
Fix broken unit test
Merge pull request #300 from sufing/GRADLE-3133
Minor cleanup
Mention Harald Schmitt’s contribution
Converted many native-binary plugins from Groovy to Java
Converted VisualStudioPlugin to java
License headers & javadoc
Temporarily disable tests that are failing on IBM JDK
Make the model path element part of Inputs.
Add support for a write only view of a polymorphic domain object container, which we are using to project a controlled API of the task container for model rules.
Daemon server code to enable to cancel build.
Add --cancel option and cancellation that waits 10s for the build finish or does forcefulStop.

TODOs:
Need to add test coverage for stoping to verify daemon state after the operation.
Cancel through toolingApi has to cancel matching daemon rather than random one.
Fix 'can cancel action' test flakiness.
Cancel build using connection to a daemon asked to run the job.
Change cancel command to carry buildId.

This makes it safer that the right build is cancelled.
As a result --cancel option now has an argument (that needs to be searched in log).
Add integration test for command line invokation.
Add more advanced test case for task creation.
Fixing 'CancellingDaemonIntegrationSpec.cancels correct build'.
Another attempt to make 'ToolingApiLoggingCrossVersionSpec.logging is live' test most stable.