Add hover and definition support to LspClient and LspRuntime.
- LspClient.get_hover(): sends textDocument/hover, returns Hover dict
- LspClient.get_definitions(): sends textDocument/definition, handles
Location, Location[], and LocationLink[] responses
- LspRuntime wrappers: input validation, file reading, language
detection, 1-based to 0-based line/column conversion
- try/finally for did_close() safety on both new methods
- Tool adapter: HOVER and DEFINITIONS dispatch to runtime instead of
raising LspNotAvailableError
- Updated lsp_tool_adapter_coverage test (HOVER -> REFERENCES)
- 21 Behave BDD scenarios with full path coverage
ISSUES CLOSED: #1243