Refactor UvStream constructor
Add support for spawning nvim in "embedded mode"
Configure travis to run tests on python 2.6
Add --nologcapture to nosetests/travis
Implement NullHandler class for python 2.6 compatibility
Merge pull request #21 from tarruda/embedded-mode

Embedded mode
Bump version
Configure travis to run tests in --embedded-mode
Refactor to be more compliant with msgpack-RPC
Fix blocking rpc requests

It was possible to return from blocking rpc requests without a response, this
was fixed with some refactoring in client.py and rpc_stream.py
Use NVIM_SPAWN_ARGV instead of NEOVIM_SPAWN_ARGV for embedded tests
Merge pull request #22 from tarruda/msgpack-rpc-compliance

Msgpack rpc compliance
Bump version
Use NVIM for other environment variables

Continuing the work on @050adeb6bbcf119, this changes the other environment
variables used by by this library
Don't call error callback on non-fatal errors

The error_cb should only be used for unrecoverable errors such as closed
connection.
Bump version
Port to python3

- Refactor imports into relative imports
- Import StringIO from io module
- Refactor iterator .next() as function next()
Fix discover_api

- discover_api() is now a private method called from the Client
  constructor
- Unpacking assumes utf8 encoding for binary sequences
Reset unpacker to utf8 after calling _discover_api

- Once we are done calling API 0 we can recreate the Unpacker
  to use utf8 by default - this is potentially unsafe but it is
  the best short of msgpack 2.0 binary support
Convert Unicode to utf8 for Python2

- The type() and __name__ do not accept the unicode type,
  added a couple of helpers to automatically convert from unicode
  to utf8 strings (for Python2)