Neovim: No Unicode decoding for replace_termcodes

- In Neovim the replace_termcodes will return invalid strings (according
  to &encoding). When calling this function we need to skip the
  automatic DecodeHook.
- The communicator now keeps two instances of the Nvim object, one with
  and one without the DecodeHook. The later is only used when calling
  eval since that is the only case where the return value is passed
  outside the Communicator.
- Renamed Communicator.conn as .nvim

Fixes #76 for me, the following test previously failed with a decode exception
```
  :let g:weirdpath = 'weird¬p…l✓u↓g⏎i‽n'<CR>
```