Support alternative output formats

This is to add support for JUnit XML lint format, Java-style formats, and a simple one-line format as well.

Selection of format is done via the `--output` argument passed to the command line function. Omitting this argument leaves the format exactly as it was previously.