Update Tokenized/DisplayBuffer prior to TextBuffer::onDidChange handlers

Fixes #3789
:arrow_up: language-ruby@0.41
Unmount TextEditorComponent when TextEditor is destroyed

We don’t want to do it when the element is detached because it might
be caused by moving the editor rather than destroying it. Unmounting
the component entirely and then remounting it causes the hidden input
to not be recycled, interfering with focus restoration. Watching for
destruction of the model is a good way to ensure we always tear down
the view at the right time without doing it prematurely.
Call legacy SpacePen remove hooks before unmounting TextEditorComponent
Prepare 0.141
:arrow_up: markdown-preview@0.107