ENH: Improve command line parsing code.

Invalid command line options should trigger errors with diagnostics
instead of silently (or quietly) proceeding with partial defaults.

Prefer to throw errors on startup rather than give unexpected
results after hours of processing.
COMP: Remove compiler warning about unused variables
STYLE:  Use consistent formatting

In many places, tabs and spaces were both used and it was
quite difficult to read the code.

In source code files with tabs, the uncrustify program was
run to provide consistent formatting.
Merge pull request #62 from stnava/FortifyCommandLineParsingErrors

Fortify command line parsing errors