diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php
index 49ac8ab..77069d1 100644
--- a/system/database/DB_driver.php
+++ b/system/database/DB_driver.php
@@ -372,8 +372,8 @@
 
 		if ( ! class_exists($driver))
 		{
-			include_once(BASEPATH.'database/DB_result'.EXT);
-			include_once(BASEPATH.'database/drivers/'.$this->dbdriver.'/'.$this->dbdriver.'_result'.EXT);
+			include(BASEPATH.'database/DB_result'.EXT);
+			include(BASEPATH.'database/drivers/'.$this->dbdriver.'/'.$this->dbdriver.'_result'.EXT);
 		}
 		
 		return $driver;
@@ -998,7 +998,7 @@
 			return TRUE;
 		}
 	
-		if ( ! @include_once(BASEPATH.'database/DB_cache'.EXT))
+		if ( ! @include(BASEPATH.'database/DB_cache'.EXT))
 		{
 			return $this->cache_off();
 		}
@@ -1054,13 +1054,12 @@
 
 		if ( ! class_exists('CI_Exceptions'))
 		{
-			include_once(BASEPATH.'libraries/Exceptions'.EXT);
+			include(BASEPATH.'libraries/Exceptions'.EXT);
 		}
 		
 		$error = new CI_Exceptions();
 		echo $error->show_error('An Error Was Encountered', $message, 'error_db');
 		exit;
-
 	}
 	
 }
diff --git a/system/helpers/smiley_helper.php b/system/helpers/smiley_helper.php
index 0f426d6..a073372 100644
--- a/system/helpers/smiley_helper.php
+++ b/system/helpers/smiley_helper.php
@@ -149,7 +149,7 @@
 		return FALSE;
 	}
 
-	include_once(APPPATH.'config/smileys'.EXT);
+	include(APPPATH.'config/smileys'.EXT);
 	
 	if ( ! isset($smileys) OR ! is_array($smileys))
 	{
diff --git a/system/helpers/url_helper.php b/system/helpers/url_helper.php
index cd628c6..9010a06 100644
--- a/system/helpers/url_helper.php
+++ b/system/helpers/url_helper.php
@@ -110,10 +110,7 @@
 	}
 	else
 	{
-		if (is_array($attributes))
-		{
-			$attributes = parse_url_attributes($attributes);
-		}
+		$attributes = _parse_attributes($attributes);
 	}
 
 	return '<a href="'.$site_url.'"'.$attributes.'>'.$title.'</a>';
@@ -157,7 +154,7 @@
 		$atts[$key] = ( ! isset($attributes[$key])) ? $val : $attributes[$key];
 	}
 
-	return "<a href='javascript:void(0);' onclick=\"window.open('".$site_url."', '_blank', '".parse_url_attributes($atts, TRUE)."');\">".$title."</a>";
+	return "<a href='javascript:void(0);' onclick=\"window.open('".$site_url."', '_blank', '"._parse_attributes($atts, TRUE)."');\">".$title."</a>";
 }
 	
 // ------------------------------------------------------------------------
@@ -178,10 +175,7 @@
 		$title = $email;
 	}
 	
-	if (is_array($attributes))
-	{
-		$attributes = parse_url_attributes($attributes);
-	}
+	$attributes = _parse_attributes($attributes);
 	
 	return '<a href="mailto:'.$email.'"'.$attributes.'>'.$title.'</a>';
 }
@@ -468,8 +462,13 @@
  * @param	bool
  * @return	string
  */
-function parse_url_attributes($attributes, $javascript = FALSE)
+function _parse_attributes($attributes, $javascript = FALSE)
 {
+	if (is_string($attributes))
+	{
+		return ($attributes != '') ? ' '.$attributes : '';
+	}
+
 	$att = '';
 	foreach ($attributes as $key => $val)
 	{
@@ -483,7 +482,7 @@
 		}
 	}
 	
-	if ($javascript == TRUE)
+	if ($javascript == TRUE AND $att != '')
 	{
 		$att = substr($att, 0, -1);
 	}
diff --git a/system/libraries/Config.php b/system/libraries/Config.php
index aa26c92..c4ea9b4 100644
--- a/system/libraries/Config.php
+++ b/system/libraries/Config.php
@@ -75,7 +75,7 @@
 			show_error('The configuration file '.$file.EXT.' does not exist.');
 		}
 	
-		include_once(APPPATH.'config/'.$file.EXT);
+		include(APPPATH.'config/'.$file.EXT);
 
 		if ( ! isset($config) OR ! is_array($config))
 		{
diff --git a/system/libraries/Exceptions.php b/system/libraries/Exceptions.php
index 6d58ee6..8f90ff8 100644
--- a/system/libraries/Exceptions.php
+++ b/system/libraries/Exceptions.php
@@ -120,7 +120,7 @@
 			ob_end_flush();	
 		}
 		ob_start();
-		include_once(APPPATH.'errors/'.$template.EXT);
+		include(APPPATH.'errors/'.$template.EXT);
 		$buffer = ob_get_contents();
 		ob_end_clean();
 		return $buffer;
@@ -156,7 +156,7 @@
 			ob_end_flush();	
 		}
 		ob_start();
-		include_once(APPPATH.'errors/error_php'.EXT);
+		include(APPPATH.'errors/error_php'.EXT);
 		$buffer = ob_get_contents();
 		ob_end_clean();
 		echo $buffer;
diff --git a/system/libraries/Language.php b/system/libraries/Language.php
index 37a5c7e..faf516e 100644
--- a/system/libraries/Language.php
+++ b/system/libraries/Language.php
@@ -66,16 +66,15 @@
 		}
 	
 		// Determine where the language file is and load it
-	
 		if (file_exists(APPPATH.'language/'.$idiom.'/'.$langfile))
 		{
-			include_once(APPPATH.'language/'.$idiom.'/'.$langfile);
+			include(APPPATH.'language/'.$idiom.'/'.$langfile);
 		}
 		else
 		{		
 			if (file_exists(BASEPATH.'language/'.$idiom.'/'.$langfile))
 			{
-				include_once(BASEPATH.'language/'.$idiom.'/'.$langfile);
+				include(BASEPATH.'language/'.$idiom.'/'.$langfile);
 			}
 			else
 			{
diff --git a/system/libraries/Loader.php b/system/libraries/Loader.php
index f243a28..709d9fe 100644
--- a/system/libraries/Loader.php
+++ b/system/libraries/Loader.php
@@ -315,13 +315,13 @@
 		
 			if (file_exists(APPPATH.'helpers/'.$helper.EXT))
 			{
-				include_once(APPPATH.'helpers/'.$helper.EXT);
+				include(APPPATH.'helpers/'.$helper.EXT);
 			}
 			else
 			{		
 				if (file_exists(BASEPATH.'helpers/'.$helper.EXT))
 				{
-					include_once(BASEPATH.'helpers/'.$helper.EXT);
+					include(BASEPATH.'helpers/'.$helper.EXT);
 				}
 				else
 				{
@@ -381,13 +381,13 @@
 		
 			if (file_exists(APPPATH.'plugins/'.$plugin.EXT))
 			{
-				include_once(APPPATH.'plugins/'.$plugin.EXT);	
+				include(APPPATH.'plugins/'.$plugin.EXT);	
 			}
 			else
 			{
 				if (file_exists(BASEPATH.'plugins/'.$plugin.EXT))
 				{
-					include_once(BASEPATH.'plugins/'.$plugin.EXT);	
+					include(BASEPATH.'plugins/'.$plugin.EXT);	
 				}
 				else
 				{
@@ -454,7 +454,7 @@
 				show_error('Unable to load the requested script: scripts/'.$script.EXT);
 			}
 			
-			include_once(APPPATH.'scripts/'.$script.EXT);
+			include(APPPATH.'scripts/'.$script.EXT);
 			
 			$this->_ci_scripts[$script] = TRUE;
 		}
@@ -675,8 +675,8 @@
 				show_error("Unable to load the requested class: ".$class);
 			}
 
-			include_once(BASEPATH.'libraries/'.ucfirst($class).EXT);
-			include_once(APPPATH.'libraries/'.config_item('subclass_prefix').$class.EXT);
+			include(BASEPATH.'libraries/'.ucfirst($class).EXT);
+			include(APPPATH.'libraries/'.config_item('subclass_prefix').$class.EXT);
 
 			return $this->_ci_init_class($class, config_item('subclass_prefix'), $params);			
 		}
@@ -687,7 +687,7 @@
 			$path = ($i % 2) ? APPPATH : BASEPATH;		
 			if (file_exists($path.'libraries/'.$class.EXT))
 			{
-				include_once($path.'libraries/'.$class.EXT);
+				include($path.'libraries/'.$class.EXT);
 				return $this->_ci_init_class($class, '', $params);
 			}
 		}
@@ -715,7 +715,7 @@
 			$config = NULL;
 			if (file_exists(APPPATH.'config/'.$class.EXT))
 			{
-				include_once(APPPATH.'config/'.$class.EXT);
+				include(APPPATH.'config/'.$class.EXT);
 			}
 		}
 		
@@ -758,7 +758,7 @@
 	 */
 	function _ci_autoloader()
 	{	
-		include_once(APPPATH.'config/autoload'.EXT);
+		include(APPPATH.'config/autoload'.EXT);
 		
 		if ( ! isset($autoload))
 		{
diff --git a/system/libraries/Router.php b/system/libraries/Router.php
index 886433f..6d925a1 100644
--- a/system/libraries/Router.php
+++ b/system/libraries/Router.php
@@ -81,7 +81,7 @@
 		}
 		
 		// Load the routes.php file.
-		@include_once(APPPATH.'config/routes'.EXT);
+		@include(APPPATH.'config/routes'.EXT);
 		$this->routes = ( ! isset($route) OR ! is_array($route)) ? array() : $route;
 		unset($route);
 
diff --git a/system/libraries/Table.php b/system/libraries/Table.php
index 183e889..1b25a44 100644
--- a/system/libraries/Table.php
+++ b/system/libraries/Table.php
@@ -268,7 +268,7 @@
 	 * @access	public
 	 * @return	void
 	 */
-	function clear_data()
+	function clear()
 	{
 		$this->rows				= array();
 		$this->heading			= array();