Merge branch 'release-0.6.1'
Ensure uploaded filename is correct
Add tests for unicode filename uploads
Support unicode filenames

Python2 encodes commandline parameters based on the default system encoding.
We must explicitly decode this to unicode.
Python3 uses unicode filenames by default, so no action needed.
Ensure lists inside parameters are UTF-8 encoded

Recurse properly into embedded lists
Ensure all parameter contents are UTF-8 encoded
Fix repr unicode handling

Python2 requires utf-8 encoded bytestring
Python3 requires unicode string
Ensure tag update/delete URLs are UTF-8 encoded
Add unicode support for the options parameter
Run unit tests under PyPy too
Merge branch 'sneakypete81-unicode_filenames' into development
Merge branch 'sneakypete81-unicode_repr' into development
Merge branch 'sneakypete81-unicode_params' into development
Merge branch 'sneakypete81-unicode_tags' into development
Merge branch 'sneakypete81-pypy' into development