Various plugin improvements:

* Decouple plugin from Cobertura version - plugin doesn't compile
  against a specific version. Instead it use the Classload and
  reflection to load the Main tasks and execute them. Allows for
  supporting older versions of Cobertura.
* Improved plugin detection for Groovy and Scala - use Gradle's action
  handlers to detect when Groovy or Scala is added and configured
  support for them. Allows those plugins to be declared out-of-order
  from Cobertura.
* Improved task dependency configuration - Isolate Cobertura to the
  project declaring the the plugin. No cross-project coupling which
  could impact Gradle parallelization. Provide sane defaults for Test
  and AbstractCompile tasks and provide mechanism for overriding/adding
  additional task dependencies.
* Convert CoberturaRunner.java to CoberturaRunner.groovy - no reason
  this as a Java class.
adding CoberturaRunnerTest.java
initial commit of unit tests
updating ignore file
full coverage for CopyDatafileTaskTest.groovy
added testing for GenerateReportTaskTest.groovy
use system class loader as parent of cobertura classloader for executing cobertura tasks
rename task configuration methods
Merge pull request #31 from johnrengelman/repairs

Various plugin improvements:
Removed the symlink to the plugin itself
Recreated the testclient buildSrc symlinks in a way that doesn't put the test client itself in the buildSrc directory
Cleaned up some things after a pull request.  Restored the coberturaReport task, and updated what little unit testing I have
Finished initial implementation of the checkCoverage task.  Now I need to work out the kinks.
added extra testing
Merge remote-tracking branch 'upstream/master'