Return unicode from _safe_str in Python 2.x

Under *Python 2.x*, `_safe_str()` should return `unicode`, otherwise `logger.error(u"The quiæk fåx jømps øver the lazy dåg")` fails in celery's `ColorFormatter`. This is because celery's `ColorFormatter.format()` expects unicode or ascii from `_safe_str()`, not `utf-8`, otherwise `str_t(...)` (`unicode(...)`) fails.