Use Boost program_options instead of vendoring clipp
This changes how options are parsed a bit, but tests are happy and typical usage is unaffected; just the usage screen is different.
This was intended for post-1.0, but turns out I decided to do it. Boost is already required for pre-C++11, so it doesn't seem like a big deal to use. If you don't build the tools, it won't be required.
Notes
- Perhaps the common parsing code which is kinda copy-paste could merged somewhere?
- Investigate program_options value to directly place into variables without manually getting/checking afterward?
- I'm not great with boost, especially the somewhat hairy program_options. Might be nice to review.