lsp: implement workspace edit
Implements proper support for the workspace edit lsp structure and uses it in the rename provider and the work space edit apply handler.
Tested with the rename functionality of the rust and python plugin.
Implements proper support for the workspace edit lsp structure and uses it in the rename provider and the work space edit apply handler.
Tested with the rename functionality of the rust and python plugin.