Initial support for Neovim

- Uses the Neovim python client to communicate
- New option --neovim to use nvim instead of vim
- New vim.Communicator derived class for Neovim
- The Neovim API calls currently do not match the Vim server
  functions - had to wrap calls in *call* and escape some of the
  commands
Change default delay for Neovim

- The default delay for Neovim is now 0, but the -d parameter is
  still respected if present
Log Neovim command on Communicate()
Neovim: Replace command_output() with eval()
Add default delay info to usage help
Replace VroomEnd with qa!
Only import neovim module if necessary

- Delay importing of the neovim module until we check if --neovim
  as passed
Remove startup time for Neovim

- For Neovim we don't respect startuptime, instead we wait until the
  Neovim communication socket is created.
- To avoid a lock we stop waiting after a maximum time of 5s.
Update --startuptime usage msg for Neovim
Change default --shell-delay for Neovim to 0
Remove Neovim socket on Kill
Merge pull request #30 from equalsraf/tb-neovim

Initial support for Neovim