Add CSV output reporting.

It's too late and I'm not entirely happy with `CSVReporter` and especially `CSVReporterTest` but the CSV feature is too cool to wait. Would appreciate improvements.

Pretty much passed on `PluginTest.groovy` entirely. This needs tackling separately.

Can't wait to get these CSV data files into R and start making some plots!
Ahhh... just checked and the `getOption("header")` can return null which blows up the `.toBoolean()` but not the `==`.