Store syntect parse state in state cache
Store syntect parse state in state cache

With this commit the syntect state is stored in the cache, and the
cache's frontier is used to track the highlighting work. Note though
that it's not closing a frontier when states match, so it always
re-highlights to the end of the document. It does start at the edited
point though, so interactivity is much better.

It kinda works but yields incorrect highlighting results.

fuchsia-mirror/third_party-xi-editor,google/xi-editor,fuchsia-mirror/third_party-xi-editor,fuchsia-mirror/third_party-xi-editor,google/xi-editor,google/xi-editor,fuchsia-mirror/third_party-xi-editor,google/xi-editor