Port obmc to python3.5

Change-Id: I1ed6c6bd914635485a697369048a8be9e5919fc6
Signed-off-by: Balaji B Rao <balajibapu@gmail.com>
diff --git a/obmc/dbuslib/propertycacher.py b/obmc/dbuslib/propertycacher.py
index 7888b46..ebbe92a 100644
--- a/obmc/dbuslib/propertycacher.py
+++ b/obmc/dbuslib/propertycacher.py
@@ -15,7 +15,7 @@
 # permissions and limitations under the License.
 
 import os
-import cPickle
+import pickle
 import json
 
 CACHE_PATH = '/var/cache/obmc/'
@@ -28,7 +28,7 @@
 
 
 def save(obj_path, iface_name, properties):
-    print "Caching: "+obj_path
+    print("Caching: "+obj_path)
     filename = getCacheFilename(obj_path, iface_name)
     parent = os.path.dirname(filename)
     try:
@@ -39,11 +39,11 @@
                 ## use json module to convert dbus datatypes
                 props = json.dumps(properties[iface_name])
                 prop_obj = json.loads(props)
-                cPickle.dump(prop_obj, output)
+                pickle.dump(prop_obj, output)
             except Exception as e:
-                print "ERROR: "+str(e)
+                print("ERROR: "+str(e))
     except:
-        print "ERROR opening cache file: "+filename
+        print("ERROR opening cache file: "+filename)
 
 
 def load(obj_path, iface_name, properties):
@@ -52,14 +52,14 @@
     if (os.path.isfile(filename)):
         if iface_name in properties:
             properties[iface_name] = {}
-        print "Loading from cache: "+filename
+        print("Loading from cache: "+filename)
         try:
             p = open(filename, 'rb')
-            data = cPickle.load(p)
-            for prop in data.keys():
+            data = pickle.load(p)
+            for prop in list(data.keys()):
                 properties[iface_name][prop] = data[prop]
 
         except Exception as e:
-            print "ERROR: Loading cache file: " + str(e)
+            print("ERROR: Loading cache file: " + str(e))
         finally:
             p.close()