Add `measure_hot` and `markdown_format` as detail classes, since
they're still pretty rough and need to be worked into the design.
But for now, they're functional proofs of concept. The formatting is
rough, but demonstrates basics.
Also added launch, exec, and summary functionality. These aren't details
and will be part of the project's API.
Refactor nvbench::state to use this for axis parameters.
These will also be useful for summaries and measurements.
Also adds a new ASSERT_THROWS_ANY macro to test some of the new API.