Fix constructor arguments to source

Instatiations of sources all passed (driver, connection) to the
constructor, which was expecting (config, connection).  The
config option is currently ignored (sources currently have no
additional configuration), which is why we didn't notice the
discrepancy.

Update the constructor to (driver, connection, optional config)
to match the rest of the driver-related classes.

Change-Id: Ibc878b51b81950559d39b00b1591864c7661fe7c
diff --git a/zuul/source/__init__.py b/zuul/source/__init__.py
index 69dc162..0fc9dd3 100644
--- a/zuul/source/__init__.py
+++ b/zuul/source/__init__.py
@@ -27,9 +27,10 @@
 
     Defines the exact public methods that must be supplied."""
 
-    def __init__(self, source_config={}, connection=None):
-        self.source_config = source_config
+    def __init__(self, driver, connection, config=None):
+        self.driver = driver
         self.connection = connection
+        self.config = config or {}
 
     @abc.abstractmethod
     def getRefSha(self, project, ref):