renamed infer to pretype; subtyping, destructing types
wired up pre-typing; debugging in progress