Start removing dependence on gflags.

Reviewed in https://codereview.appspot.com/7628044/.

This only removes the dependency from the core library, a second CL will
update all the samples.
diff --git a/tests/__init__.py b/tests/__init__.py
index 2451995..7913e6f 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -14,9 +14,8 @@
 
 __author__ = 'afshar@google.com (Ali Afshar)'
 
-import gflags
+import oauth2client.util
 
 def setup_package():
   """Run on testing package."""
-  FLAGS = gflags.FLAGS
-  FLAGS.positional_parameters_enforcement = 'EXCEPTION'
+  oauth2client.util.positional_parameters_enforcement = 'EXCEPTION'
diff --git a/tests/test_discovery.py b/tests/test_discovery.py
index b8b5ac0..499edda 100644
--- a/tests/test_discovery.py
+++ b/tests/test_discovery.py
@@ -25,7 +25,6 @@
 
 import copy
 import datetime
-import gflags
 import httplib2
 import os
 import pickle
@@ -65,16 +64,16 @@
 from apiclient.http import MediaUploadProgress
 from apiclient.http import tunnel_patch
 from oauth2client import GOOGLE_TOKEN_URI
+from oauth2client import util
 from oauth2client.anyjson import simplejson
 from oauth2client.client import OAuth2Credentials
-from oauth2client.util import _add_query_parameter
+
 import uritemplate
 
 
 DATA_DIR = os.path.join(os.path.dirname(__file__), 'data')
 
-FLAGS = gflags.FLAGS
-FLAGS.positional_parameters_enforcement = 'EXCEPTION'
+util.positional_parameters_enforcement = util.POSITIONAL_EXCEPTION
 
 
 def assertUrisEqual(testcase, expected, actual):
@@ -331,20 +330,20 @@
 class DiscoveryFromDocument(unittest.TestCase):
 
   def test_can_build_from_local_document(self):
-    discovery = file(datafile('plus.json')).read()
+    discovery = open(datafile('plus.json')).read()
     plus = build_from_document(discovery, base="https://www.googleapis.com/")
     self.assertTrue(plus is not None)
     self.assertTrue(hasattr(plus, 'activities'))
 
   def test_can_build_from_local_deserialized_document(self):
-    discovery = file(datafile('plus.json')).read()
+    discovery = open(datafile('plus.json')).read()
     discovery = simplejson.loads(discovery)
     plus = build_from_document(discovery, base="https://www.googleapis.com/")
     self.assertTrue(plus is not None)
     self.assertTrue(hasattr(plus, 'activities'))
 
   def test_building_with_base_remembers_base(self):
-    discovery = file(datafile('plus.json')).read()
+    discovery = open(datafile('plus.json')).read()
 
     base = "https://www.example.com/"
     plus = build_from_document(discovery, base=base)
@@ -364,7 +363,7 @@
     os.environ['REMOTE_ADDR'] = '10.0.0.1'
     try:
       http = HttpMockSequence([
-        ({'status': '400'}, file(datafile('zoo.json'), 'r').read()),
+        ({'status': '400'}, open(datafile('zoo.json'), 'rb').read()),
         ])
       zoo = build('zoo', 'v1', http=http, developerKey='foo',
                   discoveryServiceUrl='http://example.com')
@@ -377,7 +376,7 @@
     # out of the raised exception.
     try:
       http = HttpMockSequence([
-        ({'status': '400'}, file(datafile('zoo.json'), 'r').read()),
+        ({'status': '400'}, open(datafile('zoo.json'), 'rb').read()),
         ])
       zoo = build('zoo', 'v1', http=http, developerKey=None,
                   discoveryServiceUrl='http://example.com')
@@ -501,7 +500,7 @@
 
   def test_tunnel_patch(self):
     http = HttpMockSequence([
-      ({'status': '200'}, file(datafile('zoo.json'), 'r').read()),
+      ({'status': '200'}, open(datafile('zoo.json'), 'rb').read()),
       ({'status': '200'}, 'echo_request_headers_as_json'),
       ])
     http = tunnel_patch(http)
@@ -1091,8 +1090,8 @@
     zoo_uri = uritemplate.expand(DISCOVERY_URI,
                                  {'api': 'zoo', 'apiVersion': 'v1'})
     if 'REMOTE_ADDR' in os.environ:
-        zoo_uri = _add_query_parameter(zoo_uri, 'userIp',
-                                       os.environ['REMOTE_ADDR'])
+        zoo_uri = util._add_query_parameter(zoo_uri, 'userIp',
+                                            os.environ['REMOTE_ADDR'])
 
     http = httplib2.Http()
     original_request = http.request
diff --git a/tests/test_json_model.py b/tests/test_json_model.py
index d6cf0c0..281affb 100644
--- a/tests/test_json_model.py
+++ b/tests/test_json_model.py
@@ -22,7 +22,6 @@
 __author__ = 'jcgregorio@google.com (Joe Gregorio)'
 
 import copy
-import gflags
 import os
 import unittest
 import httplib2
@@ -32,8 +31,6 @@
 from apiclient.model import JsonModel
 from oauth2client.anyjson import simplejson
 
-FLAGS = gflags.FLAGS
-
 # Python 2.5 requires different modules
 try:
   from urlparse import parse_qs
@@ -212,8 +209,7 @@
           self[key] = value
     old_logging = apiclient.model.logging
     apiclient.model.logging = MockLogging()
-    apiclient.model.FLAGS = copy.deepcopy(FLAGS)
-    apiclient.model.FLAGS.dump_request_response = True
+    apiclient.model.dump_request_response = True
     model = JsonModel()
     request_body = {
         'field1': 'value1',
diff --git a/tests/test_protobuf_model.py b/tests/test_protobuf_model.py
index 02e8846..b9c92b0 100644
--- a/tests/test_protobuf_model.py
+++ b/tests/test_protobuf_model.py
@@ -21,7 +21,6 @@
 
 __author__ = 'mmcdonald@google.com (Matt McDonald)'
 
-import gflags
 import unittest
 import httplib2
 import apiclient.model
@@ -29,8 +28,6 @@
 from apiclient.errors import HttpError
 from apiclient.model import ProtocolBufferModel
 
-FLAGS = gflags.FLAGS
-
 # Python 2.5 requires different modules
 try:
   from urlparse import parse_qs