Fix issues with doc syncing in inline editors

Also addresses #6039. This PR fixes two problems:

* In v4, CodeMirror sends multiple `change` events for a single operation, unlike in v3 where it would send a linked list of all the edits in a single `change`. This PR changes our `change` event to use the new `changes` event in v4, which sends an array of edits. That means our `change` event API will break anyone who was using the old linked list, but a quick survey of extensions showed that the only extension that was even looking at that argument was @peterflynn's Go to Last Edit extension.
    * Note that as part of this, I also fixed an apparent bug in ScopeManager where it was only looking at the first change record in the list. @dangoor might want to take a look at this.
* `doMultipleEdits()` had a bad bug where it was doing each edit in the current Editor's `_codeMirror` instead of the underlying Document's `_codeMirror`, which was bad since it was the Document that was batching the edits.

With this, multiselect edits seem to be working properly within inline editors.

@redmunds