Implemented find-prefixes and h-follow in terms of expansion maps.
Fixed a number of bugs and switched to record representations.

The record representations should help catch type-mismatch errors more
readily.  Plus the customizable printers makes it easier to visualize
what each object represents, without having to parse it in my head.
Checkpoint.
checkpoint