This revision is primarily intended to improve UTF-8 handling, particularly with regard to filenames.
Specifically: with this revision it should now be possible for the game to correctly read filenames with above-ASCII UTF-8 encoded characters (e.g. ë) on non-Windows systems[1] (previously, trying it would result in such files loading, but with Mojibake[2] in their filenames, as evidenced by looking in replay files; and template references wouldn't resolve due to filenames not matching BuildList/ProductionQueue tokens).
This revision also contains some other filepath-related string-handling improvements.
[1] - I'd be interested to learn if this improves anything to/for Windows systems.
[2] - https://en.wikipedia.org/wiki/Mojibake