Use a function to convert paths to and from utf-8.
This will eventually try to cope with unicode characters. Not sure if it'll ever be truely cross platform.