adding query component and updating contact
diff --git a/Res/phonegap/contact.js b/Res/phonegap/contact.js
index cfe072a..8ecd5cb 100644
--- a/Res/phonegap/contact.js
+++ b/Res/phonegap/contact.js
@@ -99,7 +99,7 @@
         errorCB(errorObj);
     }
     else {
-        PhoneGap.exec(successCB, errorCB, "Contacts", "remove", [{ "contact": this}]);
+        PhoneGap.exec(successCB, errorCB, "com.phonegap.Contacts", "remove", [{"contact": this}]);
     }
 };
 /**
@@ -115,7 +115,7 @@
         errorCB(errorObj);
     }
     else {
-        PhoneGap.exec(successCB, errorCB, "Contacts","displayContact", [this.id, options]);
+        PhoneGap.exec(successCB, errorCB, "com.phonegap.Contacts","displayContact", [this.id, options]);
     }
 };
 
diff --git a/Res/phonegap/phonegap.base.js b/Res/phonegap/phonegap.base.js
index 4411438..b89153d 100644
--- a/Res/phonegap/phonegap.base.js
+++ b/Res/phonegap/phonegap.base.js
@@ -515,23 +515,24 @@
  			start = 1;
  		}
         
-        var uri = [];
-    	var dict = null;
-    
+      var uri = [];
+      var query = [];
     	for (var i = start; i < args.length; i++) {
         	var arg = args[i];
         	if (arg == undefined || arg == null)
             	continue;
         	if (typeof(arg) == 'object')
-            	dict = arg;
+              for(i in arg) {
+                query.push(i + '=' + encodeURIComponent(arg[i]));
+              }
         	else
             	uri.push(encodeURIComponent(arg));
     	}
     	var next = callbackId != null  ?  ("/" + callbackId + "/") : "/";
     	var url = "gap://" + service + next + uri.join("/");
 
-    	if (dict != null) {
-        	url += "?" + encodeURIComponent(JSON.stringify(dict));
+    	if (query.length > 0) {
+        	url += "?" + encodeURIComponent(query.join("&"));
     	}
 		document.location = url;