Implemented vim.current.range

- Add arguments range_start and range_end to methods python_execute and
  python_execute_file
- Add test for python_execute with range
Fix import order according to new version of flake8
Bump version
Include base version for msgpack, because 0.3 doesn't work

If I import neovim with less than version 0.4 of msgpack installed, I get this stack trace:

```
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/chartdev/venvs/chartio/local/lib/python2.7/site-packages/neovim/__init__.py", line 8, in <module>
    from .api import DecodeHook, Nvim, SessionHook
  File "/home/chartdev/venvs/chartio/local/lib/python2.7/site-packages/neovim/api/__init__.py", line 9, in <module>
    from .nvim import Nvim, NvimError
  File "/home/chartdev/venvs/chartio/local/lib/python2.7/site-packages/neovim/api/nvim.py", line 4, in <module>
    from msgpack import ExtType
ImportError: cannot import name ExtType
```

0.4.0 seems to work.
Merge pull request #56 from benekastah/patch-1

Include base version for msgpack, because 0.3 doesn't work
Refactor for the new Nvim plugin specification