Evaluate lazy translation in exception __str__

The OpenStackException.__str__ method returns
self._error_string which is actually a gettextutil.Message
object not a str.

str(o) will check the return type of o.__str__() and raise
TypeError if __str__ returns non-string object.

The fix will not go into oslo as OpenStackException is
about to be deprecated. And this patch is also the first
step to remove all the references to oslo exception.py.

Fixes bug #1208454

Change-Id: Ib6abe3517bcb1b34fc6a71e5c46ee3774e067f9a
Merge "Evaluate lazy translation in exception __str__"