shill: Service: Implement ClearProperties

ClearProperties takes an array of string property names and
does the equivalent of calling "ClearProperty" on each of these.
It returns an array of boolean values which return whether each
of these ClearProperty attempts succeeded.

BUG=chromium-os:35900
TEST=Manual:
dbus-send --system --dest=org.chromium.flimflam --print-reply /service/1 org.chromium.flimflam.Service.ClearProperties array:string:"EAP.SubjectMatch","UIData","Name","Strength","StaticIP.Prefixlen","UIData"
   array [
      boolean true
      boolean true
      boolean false
      boolean false
      boolean false
      boolean true
   ]

Change-Id: I251a77eeb0dcb707814b742e77b4ce6a8924ae52
Reviewed-on: https://gerrit.chromium.org/gerrit/37041
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Reviewed-by: Christopher Wiley <wiley@chromium.org>
Reviewed-by: Greg Spencer <gspencer@chromium.org>
Commit-Ready: Paul Stewart <pstew@chromium.org>
Tested-by: Paul Stewart <pstew@chromium.org>
diff --git a/doc/service-api.txt b/doc/service-api.txt
index dabfd07..e113240 100644
--- a/doc/service-api.txt
+++ b/doc/service-api.txt
@@ -32,6 +32,13 @@
 			Possible Errors: [service].Error.InvalidArguments
 					 [service].Error.InvalidProperty
 
+		array{bool} ClearProperties(array{string} names)
+
+			Clear the value of the specified properties.  Calls
+			ClearProperty above on each of the property names
+			and returns an array of boolean values indicating
+			whether each ClearProperty attempt succeeded.
+
 		void Connect()
 
 			Initiate a connection for the specified service.