basics of compact formatter
no semicolons for rule sets with a single property declaration.

I find this easier to read by removing unnecessary cruft.
align opening brace of each ruleset
dynamically locate formatter from ARGV
add compact as a formatter
generalize cucumber steps to work for multiple examples
add compact test