Improve CSV generation

New/modified services (services not read from existing JSON file) are
not the same object type as existing services.  The object propeties
are pulled in using some Groovy metaClass magic
Add tests for CSV generation