python3 support

here is build results:
https://travis-ci.org/simon-liu/pynsq/builds/40990046
I have the same concern that I had in the previous Python 3 PR (https://github.com/bitly/pynsq/pull/88#discussion_r14887555) and now I've read the docs :smile:.

I believe this should **require** a binary body (and force the end-user to choose an encoding) - but I understand that in the majority of cases it will probably end up being `utf-8`.  My concern is that it's *silent*.

My conceit is that If we end up going this route we need to clearly document this on all the public-facing API methods that end up coercing to `utf-8`.

Thoughts @jehiah