Also use SystemTools::Fopen() instead of fopen(). This is to eventually support utf-8 filenames.
This assumes that coverage.py has been run in such a way to produce its standard XML output. This uses the Cobertura schema and should be somewhat generalizable.