Handle Unicode inputs for Python 2

This introduces a(n extra) chunk of ugliness, but it allows us to maintain
support for 2 and 3 in the same source tree.  Refs #7, thanks to hbc for
reporting.
Reflect types when cleansing strings

This is unfortunately a nasty necessity to maintain backwards compatibility for
users who are still on Python 2.  Refs #7.
Merge branch 'bug/issue7_unicode_py2'

* bug/issue7_unicode_py2:
  Reflect types when cleansing strings
  Handle Unicode inputs for Python 2
0.6.3 released