[ty] Implement LSP `textDocument/implementation` request (#25410)
## Summary
https://github.com/astral-sh/ty/issues/3514
Implements support for `textDocument/implementation`
1. Finds one or more class roots:
- for an attribute access, normalize the receiver type into class roots
- for a method declaration, use the containing class as the root
2. For each class root, collect:
- the method definition selected by normal MRO lookup for that root
- same-named methods defined directly on known transitive subclasses
3. Deduplicate targets + preserve discovery order
## Test Plan
- New snapshot tests
- E2E in VSCode and Neovim
<img width="492" height="176" alt="Screenshot 2026-05-26 at 23 16 45"
src="https://github.com/user-attachments/assets/aaa9c4d2-aed1-42c3-88be-829b369c1910"
/>
<img width="1058" height="394" alt="Screenshot 2026-05-26 at 23 16 28"
src="https://github.com/user-attachments/assets/931615d1-c327-4c90-9c7e-4a6070b24fc4"
/>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Lérè <contact@lrbr.dev>