Problem:
Various stop paths skip clients still waiting for an "initialize" response.
- Quitting Nvim leaves their servers running/dangling.
- `vim.lsp.enable(name, false)` and `:lsp stop|restart|disable` don't
stop them.
- Extra `stop()` sends extra "shutdown" (instead of force-stopping as
documented).
- Restart scheduled before exit *starts a server during exit*.
- A late "initialize" response initializes a client that is already
being force-stopped...
- Force-stopping warns "Client X quit with exit code N".
Solution:
- Include `_uninitialized` clients in all stop paths.
- Extra `stop()` force-stops. The exit handler skips clients that are
already stopping, so `exit_timeout=false` is still respected.
- Skip a scheduled restart during Nvim exit.
- Ignore the "initialize" response of a stopping client.
- Don't warn about the exit status of a stopped server.