Use the getopt package for all command line parsing
This is an interface change, in that options (all options are long options) must be written with GNU-style double dashes, --foo, not google style, -foo.
Uses only the most basic features of the getopt package.