fix stack overflow that occurred due to grammar+typechecker accepting
extends/satisfies/of clauses in class/interface aliases
allow inheritance of distinct instantiations of contravariant types
relates to #567