sketch a generic solution to the 'share an arbitrary file via a repository dependency' problem
Converted some Groovy classes to Java

+review REVIEW-5128
Converted a bunch of task classes Groovy -> Java

+review REVIEW-5128
Renamed a bunch of native-language classes into org.gradle.language.*

+review REVIEW-5128
AbstractTask.setActions has no effect due to scoping