Reorganize program options for clarity and modularity

Options are now organized under "general", "testing", and "timing".
--help, for brevity, now only produces the general options.
There are now more help options, one for each type of option.