Added new appengine sample for discovery, and also cleaned up the latitude future.json file.
diff --git a/apiclient/contrib/latitude/future.json b/apiclient/contrib/latitude/future.json
index 3fef33a..e44d410 100644
--- a/apiclient/contrib/latitude/future.json
+++ b/apiclient/contrib/latitude/future.json
@@ -2,73 +2,73 @@
   "data": {
     "latitude": {
       "v1": {
-        "baseUrl": "https://www.googleapis.com/", 
+        "baseUrl": "https://www.googleapis.com/",
         "auth": {
           "request": {
             "url": "https://www.google.com/accounts/OAuthGetRequestToken",
             "parameters": {
               "xoauth_displayname": {
                 "parameterType": "query",
-                "required": False
+                "required": false
               },
               "domain": {
                 "parameterType": "query",
-                "required": True
+                "required": true
               },
               "scope": {
                 "parameterType": "query",
-                "required": True
-              },
-            },
+                "required": true
+              }
+            }
           },
           "authorize": {
             "url": "https://www.google.com/latitude/apps/OAuthAuthorizeToken",
             "parameters": {
               "oauth_token": {
                 "parameterType": "query",
-                "required": True
+                "required": true
               },
               "iconUrl": {
                 "parameterType": "query",
-                "required": False
+                "required": false
               },
               "domain": {
                 "parameterType": "query",
-                "required": True
+                "required": true
               },
               "scope": {
                 "parameterType": "query",
-                "required": True
-              },
-            },
+                "required": true
+              }
+            }
           },
           "access": {
             "url": "https://www.google.com/accounts/OAuthGetAccessToken",
             "parameters": {
               "domain": {
                 "parameterType": "query",
-                "required": True
+                "required": true
               },
               "scope": {
                 "parameterType": "query",
-                "required": True
-              },
-            },
-          },
+                "required": true
+              }
+            }
+          }
         },
         "resources": {
           "currentLocation": {
             "methods": {
-              "delete": {}, 
-              "get": {}, 
+              "delete": {},
+              "get": {},
               "insert": {}
             }
-          }, 
+          },
           "location": {
             "methods": {
-              "delete": {}, 
-              "get": {}, 
-              "insert": {}, 
+              "delete": {},
+              "get": {},
+              "insert": {},
               "list": {}
             }
           }
diff --git a/apiclient/discovery.py b/apiclient/discovery.py
index 1bac08c..408abd6 100644
--- a/apiclient/discovery.py
+++ b/apiclient/discovery.py
@@ -98,13 +98,15 @@
         raise HttpError(simplejson.loads(content)['error'])
 
 
-def build(serviceName, version, http=httplib2.Http(),
+def build(serviceName, version, http=None,
     discoveryServiceUrl=DISCOVERY_URI, auth=None, model=JsonModel()):
   params = {
       'api': serviceName,
       'apiVersion': version
       }
 
+  if http is None:
+    http = httplib2.Http()
   requested_url = uritemplate.expand(discoveryServiceUrl, params)
   logging.info('URL being requested: %s' % requested_url)
   resp, content = http.request(requested_url)