fix contract
modernize a few contracts in drracket
add a few more contracts to those that opt/c recognizes and
fix a few bugs in existing ones

also, adjust opt/c so that it logs failures to optimize on its own logger
make contract structs print a little bit more nicely.