Make PolyDots actually subtype correctly.
Make PolyDots be subtypes even if they have different fixed arguments.
Add more hacky things to make with-handlers typecheck.

Closes PR12644.
Cleanup of subtyping, additional comments, and improved short circuting.