scm: mercurial: escape any filenames by urlescape (#2664, #7064).
In Mercurial, filename is not UTF-8 but byte-string. So it should be escaped to UTF-8-safe string before parsing as XML document.
NOTE: Mercurial's {|obfuscate} filter cannot be used here, because it treats filename as encoded by HGENCODING.
Contributed by Yuya Nishihara.
Authored by: tmaruyama 2011-01-05
Parent: [r4632]
Child: [r4634]