Add python3 compatibility with working tests.

So I looked into adding Python 3 support. Tests still work, but I had to enforce arguments going into the padding functions to be binary/bytes.

This is a theoretical port ("made the tests work"), but if people could look whether or not it works for them in their projects, that would be great :-)