Reformulated our representation of types; defined several interfaces to be used by get-constraints.scm.