Fix keystoneng.tenant_present results

This patch fixes wrong format of return data of keystoneng.tenant_present
method.
Correct return data format is described here:
https://docs.saltstack.com/en/latest/ref/states/writing.html#return-data

Change-Id: I5e063b38c1a0e8b0246172002263c005ae5c5787
Related-Prod: PROD-17626
diff --git a/_states/keystoneng.py b/_states/keystoneng.py
index 060ccfb..dcefbd9 100644
--- a/_states/keystoneng.py
+++ b/_states/keystoneng.py
@@ -67,6 +67,8 @@
 
 '''
 
+# Import 3rd-party libs
+from salt.ext import six
 
 def __virtual__():
     '''
@@ -392,9 +394,17 @@
         else:
             created = __salt__['keystoneng.tenant_create'](name=name, description=description, enabled=enabled,
                                                          profile=profile, **connection_args)
-        ret['changes']['Tenant'] = 'Created' if created is True else 'Failed'
-        ret['result'] = created
-        ret['comment'] = 'Tenant / project "{0}" has been added'.format(name)
+        # If tenant has been created succesfully 'created' is:
+        #      {u'test_tenant3': {'enabled': True, 'NAME_ATTR': 'name', 'HUMAN_ID': False, 'name': u'test_tenant3', 'id': u'0a5f319f8a794bfc9045746069c76fd8'}}
+        # If tenant is not created:
+        #      {'Error': 'Unable to resolve tenant id'}
+        if 'Error' in created and isinstance(created['Error'], six.string_types):
+            ret['result'] = False
+            ret['comment'] = 'Cannot create tenant / project "{0}"'.format(name)
+        else:
+            ret['changes']['Tenant'] = 'Created'
+            ret['result'] = True
+            ret['comment'] = 'Tenant / project "{0}" has been added'.format(name)
     return ret