Goal: Basic support for translation of HTML with duplicate strings

Fixes: 524106

This is still very incomplete.

Comment on html2po:
 * replace() will not work if a string is a substring of another.
 * when duplicates are resolved with context, the wrong translation may be
   chosen.

Status wrt upstream: not forwarded yet. html2po should be fixed in a more
                     general way.

--- a/translate/convert/po2html.py
+++ b/translate/convert/po2html.py
@@ -79,6 +79,7 @@
             else:
                 msgstr = self.wrapmessage(inputunit.source)
             if msgstr.strip():
+              for l in inputunit.getlocations():
                 # TODO: "msgid" is already html-encoded ("&" -> "&amp;"), while
                 #   "msgstr" is not encoded -> thus the replace fails
                 #   see test_po2html.py in line 67
