use record? predicate
support records in code dispatch
name tweaks
slightly better printings for type forms