[ty] Improve diagnostic for failed assignment to a `Callable` type. (#25308)
<!--
Thank you for contributing to Ruff/ty! To help us out with reviewing,
please consider the following:
- Does this pull request include a summary of the change? (See below.)
- Does this pull request include a descriptive title? (Please prefix
with `[ty]` for ty pull
requests.)
- Does this pull request include references to any relevant issues?
- Does this PR follow our AI policy
(https://github.com/astral-sh/.github/blob/main/AI_POLICY.md)?
-->
## Summary
<!-- What's the purpose of the change? What does it do, and why? -->
This improves the diagnostic we show when an assignment to a `Callable`
type fails. That diagnostic now contains additional context that
describes the inferred callable type that failed. The result is that the
full explanation of the failed assignment is more coherent.
Closes https://github.com/astral-sh/ty/issues/866.
## Test Plan
Please see updated tests.
<!-- How was it tested? -->