Added possibility to pass custom database objects to DB Forge and DB Utilities

Also, their  property is no longer public and the utility class no longer extends CI_DB_forge.
diff --git a/system/database/DB_forge.php b/system/database/DB_forge.php
index 2b9fb16..34140c6 100644
--- a/system/database/DB_forge.php
+++ b/system/database/DB_forge.php
@@ -40,7 +40,7 @@
 	 *
 	 * @var	object
 	 */
-	public $db;
+	protected $db;
 
 	/**
 	 * Fields data
@@ -150,13 +150,12 @@
 	/**
 	 * Class constructor
 	 *
+	 * @param	object	&$db	Database object
 	 * @return	void
 	 */
-	public function __construct()
+	public function __construct(&$db)
 	{
-		// Assign the main database object to $this->db
-		$CI =& get_instance();
-		$this->db =& $CI->db;
+		$this->db =& $db;
 		log_message('debug', 'Database Forge Class Initialized');
 	}