[ty] Separate definition construction from recording (#26477)
## Summary
This separates constructing and registering a `Definition` from
recording it in the current scope's use-def state.
`push_additional_definition` continues to create and associate
AST-backed definitions, then delegates the existing binding,
declaration, capture, and try-context bookkeeping to
`record_definition`.
This is a behavior-neutral refactor split from #26466 so synthesized
definitions can reuse the recording path without mixing the mechanical
extraction into the comprehension-walrus change. The ty core and
semantic suites and repository hooks pass.