Add outputFormat option; Declare "json" as alternative outputFormat
Merge remote-tracking branch 'darth-wade/master' into json-gen
Clean up things.

Changes:

* Moved the formats out of the task definition (they'll never change and
  can be moved out). Make the name more concise. Use `javascript` as the
  indicator for the JS target.
* Rename `outputFormat` to `format`.
* Revert `moduleName` to `module`: this is an externally used name and
  we can't just change it. People have this in their configurations, no
  breakage allowed.
Change the format slightly to make it more convenient, add unit test.
Convert to plain identifier keys.