Sync log.py from Oslo-incubator

This change syncs log.py and it's dependencies from Oslo-incubator to
include the password sanitation fix that landed in Oslo with commit
76b0cd10c414ae71e6f041adb431460b3337c63d.

The following is a list of the change IDs that this
commit is bringing in from the last sync of Oslo-incubator with
respect to the files we are touching.

2b40a10 python3: Fix UserString import
c331e74 Enable multiple translation domains for gettextutils
89369c3 gettextutils: port to Python 3
6d49bca Translate all substitution elements of a Message object
3970d46 Fix typos in oslo
88db9c8 When translating if no locale is given use default locale
53ebd30 python3: use six.text_types for unicode()
25c5854 Adds admin_password as key to be sanitized when logging
2251cb5 Do not name variables as builtins
04c1b5a Type check for Message param to avoid AttributeError

Change-Id: Ie4d5929604e3fc057ea09edbbf3adf16f8839a4e
Partial-Bug: #1247217
Merge "Sync log.py from Oslo-incubator"