2htdp/universe: adjust universe `loop` to make it a loop

Neither the body nor handler functions in `with-handlers` are
in tail position with respect to `with-handlers`.
2htdp/universe: adjust world `loop` to make it a loop

Similar to the server-side problem, but on the client side. In a
game where the server drives the clients with frequent messages
through `on-tick`, per-message growth in the continuation can
matter a lot.
add pattern-expanders to syntax/parse
move pattern-expander contracts to outer modules, trim exports

This avoids mysterious errors later in the build process related to
TR and static-contracts. I don't see how the pattern-expander code
could possibly cause the errors that occur, but this commit fixes them.
update docs for syntax pattern expanders
Add Neil's slides.
redex: make the depth-based clause ordering smarter
redex: try harder when checking non-terminals

Unfold non-terminals other than the one we're currently
checking, and follow variable references, when normalizing
patterns for nt checking.
Fix embarrassing bug in OO subtyping

Subtyping on objects was unsound due to an attempt to
make the algorithm more clever. This was a good lesson in
the danger of premature optimization.
start the drracket-tools pkg

pull out the drracket/check-syntax library into this pkg
change the recursive contract stronger implementation
to use hash tables instead of association lists
Add spaces between doc links
Fix error found by cky
Clean
Change hash in one go
style
style
authors
docs
build width