Merge pull request #209 from exarkun/182-path-types

Support bytes and unicode (with the system filesystem encoding) for filenames.