Feature: live autocomplete

This PR triggers the autocomplete dialog as you type.

So currently hooks up to the `Editor`'s `change` event, but only triggers the dialog when it detects the user is "typing" (`e.data.type` === `insertText` and one character is being inserted [we don't want to include pastes]).

This isn't hidden behind any option, and thus is activated whenever the autocomplete feature is activated. The default behavior seems sane enough to have it activated (but maybe you guys would still like to be disabled through an option, if so tell me and I'll do it).

Another thing is, we might want to `debounce` this, so if the user is typing quickly, it only opens the dialog `50ms` (or whatever) after the user has finished typing.

Feel free to give me your thoughts on this, thanks.