High Priority
-------------


Medium Priority
---------------

* tweak editing model, some behaviours are not intuitive, fix append when
  end of line is selected (maybe we can merge some code between editor and
  IncrementalInserter. By the way, IncrementalInserter is now only used by
  InputHandler's InputMode::Insert, maybe this could be refactored).

* encoding: support different encoding for files, make utf8 implementation
  more robust

* key binding support

* configurable insert mode completion support

* Design an Asynchronous model for interaction with external tools.
  For example Kakoune should provide a way to run a completion
  shell command without freezing until the completer returns.

* automatic line splitting/paragraph formatting