remove dead code

and shrink dependencies correspondingly
fix class/c contract-name implementation

specifically, fix the case where a field doesn't have
a contract, but just has to exist
track test case names to help find infinite loops
more unexpected strange things broke, so disable new class/c yet again

No joy in mudville. See
http://drdr.racket-lang.org/28175/ for details

Also fix (just introduced) infinite loop in class/c contract-name
implementation and tweak naming stuff a little so tests pass