merge
diff --git a/.hgignore b/.hgignore
index 1c08454..274be82 100644
--- a/.hgignore
+++ b/.hgignore
@@ -6,3 +6,4 @@
 .gitignore
 samples/cmdline/*.dat
 htmlcov/*
+.coverage
diff --git a/apiclient/discovery.py b/apiclient/discovery.py
index 765db3f..3d30fbd 100644
--- a/apiclient/discovery.py
+++ b/apiclient/discovery.py
@@ -32,7 +32,7 @@
 
 try: # pragma: no cover
   import simplejson
-except ImportError:
+except ImportError: # pragma: no cover
   try:
     # Try to import from django, should work on App Engine
     from django.utils import simplejson
diff --git a/functional_tests/test_services.py b/functional_tests/test_services.py
index e82ec24..ae197ba 100644
--- a/functional_tests/test_services.py
+++ b/functional_tests/test_services.py
@@ -27,9 +27,13 @@
     actcol = buzz.activities()
     activities = actcol.list(userId='googlebuzz', scope='@self',
                              max_comments=max_results*2 ,max_liked=max_results*3,
-                             max_results=max_results).execute()['items']
-    activity_count = len(activities)
+                             max_results=max_results).execute()
+    activity_count = len(activities['items'])
     self.assertEquals(max_results, activity_count)
 
-    activities = actcol.list_next(activities)
-    self.assertEquals(activities, None) # Public streams don't have next links
+    activities = actcol.list_next(activities).execute()
+    activity_count = len(activities['items'])
+    self.assertEquals(max_results, activity_count)
+
+if __name__ == '__main__':
+  unittest.main()
diff --git a/runtests.py b/runtests.py
index d36dd93..d12b2c5 100644
--- a/runtests.py
+++ b/runtests.py
@@ -31,8 +31,9 @@
 def build_suite(folder):
   # find all of the test modules
   modules = map(fullmodname, glob.glob(os.path.join(folder, 'test_*.py')))
-  print "Running the tests found in the following modules:"
-  print modules
+  if verbosity > 0:
+    print "Running the tests found in the following modules:"
+    print modules
 
   # load all of the tests into a suite
   try:
@@ -43,10 +44,12 @@
           __import__(module)
       raise
 
+# build and run unit test suite
 unit_tests = build_suite('tests')
-functional_tests = build_suite('functional_tests')
-
-# run test suites
 unittest.TextTestRunner(verbosity=verbosity).run(unit_tests)
+cleanup()
+
+# build and run functional test suite
+functional_tests = build_suite('functional_tests')
 unittest.TextTestRunner(verbosity=verbosity).run(functional_tests)
 cleanup()
diff --git a/samples/appengine/main.py b/samples/appengine/main.py
index 2116562..9f63d50 100755
--- a/samples/appengine/main.py
+++ b/samples/appengine/main.py
@@ -26,7 +26,6 @@
 from apiclient.ext.appengine import FlowThreeLeggedProperty
 from apiclient.ext.appengine import OAuthCredentialsProperty
 from apiclient.oauth import FlowThreeLegged
-from apiclient.oauth import buzz_discovery
 from google.appengine.api import users
 from google.appengine.ext import db
 from google.appengine.ext import webapp
@@ -69,7 +68,8 @@
                      'logout': logout
                      }))
     else:
-      flow = FlowThreeLegged(buzz_discovery,
+      p = build("buzz", "v1")
+      flow = FlowThreeLegged(p.auth_discovery(),
                      consumer_key='anonymous',
                      consumer_secret='anonymous',
                      user_agent='google-api-client-python-buzz-webapp/1.0',