Support unicode filenames

Partial fix for #72.

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.