SI-7126 Eliminate a source of malformed types.
SI-7126 Eliminate a source of malformed types.

The kind-polymorphic nature of Nothing and Any in
concert with type argument inference could lead to
types like `T[T]` (where `type T=Any`).

Compensatory action is taken later on to recover;
see the usages of `TypeRef#typeParamsMatchArgs`.
But this these types have a nasty property, they
can dealias to themselves. Callers recursing through
types who fail to account for this hit an infinite
recursion, as was reported in SI-7126.

This commit simply dealiases `T` when registering
the type bound in `unifySimple`.

We should try to weed out additional sources of
these types.

shimib/scala,lrytz/scala,felixmulder/scala,martijnhoekstra/scala,slothspot/scala,lrytz/scala,jvican/scala,scala/scala,martijnhoekstra/scala,shimib/scala,shimib/scala,slothspot/scala,jvican/scala,slothspot/scala,felixmulder/scala,scala/scala,martijnhoekstra/scala,scala/scala,slothspot/scala,lrytz/scala,felixmulder/scala,shimib/scala,jvican/scala,martijnhoekstra/scala,felixmulder/scala,scala/scala,jvican/scala,jvican/scala,scala/scala,jvican/scala,slothspot/scala,jvican/scala,scala/scala,lrytz/scala,slothspot/scala,felixmulder/scala,felixmulder/scala,lrytz/scala,felixmulder/scala,slothspot/scala,martijnhoekstra/scala,shimib/scala,martijnhoekstra/scala,shimib/scala,lrytz/scala