inference: limit single-level nested `Type` signature (#40379)
Previously `type_more_complex` returns `false` for `Type{Type{...}}`
compared against `Type{...}`. Per comment there, this should return `true`,
but the code was ordered incorrect (it was also missing support for
Vararg, after the recent changes).
Fixes #40336
Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com>