(typo)
typos: [{x: ...}] should be [list: {x: ...}]
isnot% should be is-not%
Mention that `is==` works the same as `is`
and `is-not==` the same as `is-not`
(For now) simplify cyclic printing, and make it work for non-ref cycles

Since we never had consensus on the previous algorithm, I decided to simplify
this a bit.  If we end up wanting to support graph and mutable-graph, we can
come back to it.

This now keeps track of a cache of arrays, objects, and refs on each path taken
through the values while printing.

It still tracks whether a ref should be treated as implicit or not (e.g.
because the data constructor does it), but doesn't attempt to build a graph
after the fact.
add a dummy stack slot for calls to recursive methods, and test for stack overflow cases
bootstrap w/cyclic printing updates
make well-formedness of blocks check toplevel programs
use JS numbers for random, pending fixes to bignums
forgotten file
fix silly typo and add another test to make sure that randoms are some amount of random
better test
fix 362 by tweaking a-seq to be lettable-aware
add a new error for cases mismatch that holds the value (#365), and make cases catch annotation errors (#274)
fix out of date prose on cases