Handle unicode characters.
Handle unicode characters.

Fixes #10

- Neovim sends the bytes for each individual column separately, so use
  that data to determine the width of the characters.
- Also fix grouping of chars for 'put' to make painting more efficient.

demelev/neovim-e,dna113p/neovim-e,coolwanglu/neovim-e