Fixes#19971.
Implement `sourceCode.markVariableAsUsed`.
It has some shortcomings at present - it does mark vars as used, so any other JS plugins can see that, but it doesn't communicate this info back to Rust side, so `no-unused-vars` doesn't act on it. But at least it doesn't cause a crash with "unimplemented" error.
The remaining issue is tracked in #20350.