make contract-stronger? recognize that predicates are stronger than
values that they accept (for certain, well-known predicates, anyway)
add a contract to colorize
improve contract-exercise so that it can take multiple arguments

(and can use one to generate values that might break another)
add table example
Add typed-untyped interaction test harness
Rackety in TR tests
Fix rest arg contract generation for case-> types

The generated contracts are still not ideal when more than
one case has a rest argument, since a later case in the
case-> contract may pass but case-> won't try all of them.
use real contracts for pin-over and pin-under
improve ->i's printing so it saves some of the source text of the dependent contracts
added a real? generator
fix contract on disk

(bug found by random testing)
add generator for (and/c real? (not/c negative?)) and (and/c rational? (not/c negative?))
and fix -> generator for mandatory keyword arguments
adjust handling of identifiers without module context by `set!`

... and `#%variable-reference`, adding a special case for an identifier
that is bound in the encloding module.
add scheme_jit_find_code_end
repair for identifier handling

Repairs commit d67082ea60.
fix build for module name resolver cache change

The xform bootstrap sets `current-library-collections-path` without
changing the namespace, which is a bad idea that was exposed by
the module name resolved cache change (commit a7ad0e3a01).
fix cons/c for combinators that insist on projections for subcontracts
(instead of working with val-first projections)
draw error highlight before calling super

closes PR 14517
adjust check syntax to track which submodule a reference occurs in

so that arrows point to the relevant requires only, not to all requires

this commit also changes the handling of module+ (aka module* w/ #f) so
that it doesn't count as an "inner" module anymore
use the name in the exists contract in its error message