[ty] Improve disjointness of `functools.partial` types (#28660)
Improves our handling of the disjointness of `functools.partial` types.
In particular, partials of callable types with the same signature are
not disjoint.
```py
from functools import partial
def f() -> int:
return 0
def _(h: Callable[[], int]):
partial_f = partial(f)
partial_h = partial(h)
static_assert(not is_disjoint_from(TypeOf[partial_f], TypeOf[partial_h]))
```