Add `HVM.log` and `HVM.black_box`, together with their documentation.
Add basic CLI support for limiting rewrites.
Trimming names and adapting them for hvm-core is not necessary anymore.
Update `pre_reduce`. `pre_reduce` can now reduce unrelated redexes in defs that use builtin defs. This is done by making builtin defs "inert" on pre-reduction, and then adding back their interactions to the reduced net. `pre_reduce_refs` is redundant now and has been removed.
Make `Ctx` and `compile_book` take a mutable borrow of `Book`.
Sister PR: https://github.com/HigherOrderCO/hvm-core/pull/60