Added parametric/simple distinction to type_refs

Also added a "known/unknown" distinction so inference can proceed from
varying stages of specificity, from unknown parametric type refs ->
unknown simple type refs -> known simple type refs (at which point they
may be converted to polymorphs in typeslots)