Much nicer and more ceylonic code

Mostly '=> elem is Type' and 'elem.equals' instead of own functions
Implement #6: command line options

Includes some refactoring in generated code (extracting some code that
doesn’t need to be generated into formattingOptions.ceylon).
Remove two warnings

by removing imports that were only used by documentation and instead
fully qualifying the name in the documentation.
Move 'key=value' splitting out of parseFormattingOptions

The (generated) function parseFormattingOptions now takes a
{<String->{String+}>*} instead of a String[]; commandLineOptions() and
formattingFile() now split the functions into key-value pairs
themselves.
formattingOptions: move shortcuts out of commandLineOptions
commandLineOptions: add aliases, presets

aliases: "maxLineWidth"->"maxLineLength"
presets: "allmanStyle"->{ braceOnOwnLine=true; }

also, heavy refactoring of commandLineOptions() to remove lots of
duplicate code (which is how it’s possible that this commit adds new
features and still has almost as many deletions as additions).
commandLineOptions: report missing values for options
commandLineOptions: implicit =true, or =false for no-...

‘--braceOnOwnLine’ is equivalent to ‘--braceOnOwnLine=true’
‘--no-braceOnOwnLine’ is equivalent to ‘--braceOnOwnLine=false’
(as long as the following argument begins with a ‘-’;
‘--braceOnOwnLine myFileName’ is interpreted as
‘--braceOnOwnLine=myFileName’)

This reverts the previous commit, which introduced a different behavior
for missing values (warning on stderr, then ignoring them).