Better unicode support

- [x] Make py2/py3 compatible string repr
- [ ] Move logic to create human-readable object repr into the `__str__` method