SI-8157 Make overloading, defaults restriction PolyType aware

Named/Default args levies an implementation restriction that
only one overloaded alternative may declare defaults.

But, this restriction failed to consider polymorphic methods.

Rather than matching on MethodType, this commit uses `Type#paramms`,
which handles PolyTypes and curried MethodTypes in one fell swoop.

Review by @odersky, who found the bug.