Python3

This pull request contains changes to make python-erlastic working with python3 (and incompatible with python2). notable differences are : 

- encoding python "str" into utf-8 binary string
- decoding `__STRING_EXT__` into `bytes()`
- `__cmp__` functions has been replaced with `eq` `neq` functions.
- dictionary of decoding function use now directly the erlang byte flag decimal representation of (http://erlang.org/doc/apps/erts/erl_ext_dist.html) instead of ascii representation.

 The request contains also 2 functions : port_req and port_res explained in the `README.md` : they allow easy programming of an erlang port communication loop.