load config files from environment specific locations in core classes, helpers and libraries
diff --git a/system/helpers/download_helper.php b/system/helpers/download_helper.php
index 6cecd0d..a851e3c 100644
--- a/system/helpers/download_helper.php
+++ b/system/helpers/download_helper.php
@@ -58,7 +58,14 @@
 		$extension = end($x);
 
 		// Load the mime types
-		@include(APPPATH.'config/mimes'.EXT);
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT))
+		{
+		    @include(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT);
+		}
+		else
+		{
+			@include(APPPATH.'config/mimes'.EXT);
+		}
 
 		// Set a default mime if we can't find it
 		if ( ! isset($mimes[$extension]))
diff --git a/system/helpers/file_helper.php b/system/helpers/file_helper.php
index 9518e48..fb074e0 100644
--- a/system/helpers/file_helper.php
+++ b/system/helpers/file_helper.php
@@ -352,7 +352,16 @@
 
 		if ( ! is_array($mimes))
 		{
-			if ( ! require_once(APPPATH.'config/mimes.php'))
+			if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT))
+			{
+			    @include(APPPATH.'config/'.ENVIRONMENT.'/mimes'.EXT);
+			}
+			else
+			{
+				@include(APPPATH.'config/mimes'.EXT);
+			}
+			
+			if ( ! is_array($mimes))
 			{
 				return FALSE;
 			}
diff --git a/system/helpers/html_helper.php b/system/helpers/html_helper.php
index 68c6f59..c94c880 100644
--- a/system/helpers/html_helper.php
+++ b/system/helpers/html_helper.php
@@ -258,7 +258,16 @@
 
 		if ( ! is_array($_doctypes))
 		{
-			if ( ! require_once(APPPATH.'config/doctypes.php'))
+			if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/doctypes'.EXT))
+			{
+			    @include(APPPATH.'config/'.ENVIRONMENT.'/doctypes'.EXT);
+			}
+			else
+			{
+				@include(APPPATH.'config/doctypes'.EXT);
+			}
+			
+			if ( ! is_array($_doctypes))
 			{
 				return FALSE;
 			}
diff --git a/system/helpers/smiley_helper.php b/system/helpers/smiley_helper.php
index 463881f..6c90151 100644
--- a/system/helpers/smiley_helper.php
+++ b/system/helpers/smiley_helper.php
@@ -229,13 +229,20 @@
 {
 	function _get_smiley_array()
 	{
-		if ( ! file_exists(APPPATH.'config/smileys'.EXT))
+		if ( ! file_exists(APPPATH.'config/smileys'.EXT) AND ! file_exists(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT))
 		{
 			return FALSE;
 		}
 
-		include(APPPATH.'config/smileys'.EXT);
-
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT))
+		{
+		    include(APPPATH.'config/'.ENVIRONMENT.'/smileys'.EXT);
+		}
+		else
+		{
+			include(APPPATH.'config/smileys'.EXT);
+		}
+		
 		if ( ! isset($smileys) OR ! is_array($smileys))
 		{
 			return FALSE;
diff --git a/system/helpers/text_helper.php b/system/helpers/text_helper.php
index 96afd4c..197bcb1 100644
--- a/system/helpers/text_helper.php
+++ b/system/helpers/text_helper.php
@@ -366,12 +366,19 @@
 {
 	function convert_accented_characters($str)
 	{
-		if ( ! file_exists(APPPATH.'config/foreign_chars'.EXT))
+		if ( ! file_exists(APPPATH.'config/foreign_chars'.EXT) AND ! file_exists(APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT))
 		{
 			return $str;
 		}
 
-		include APPPATH.'config/foreign_chars'.EXT;
+		if (file_exists(APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT))
+		{
+		    include APPPATH.'config/'.ENVIRONMENT.'/foreign_chars'.EXT;
+		}
+		else
+		{
+			include APPPATH.'config/foreign_chars'.EXT;
+		}
 
 		if ( ! isset($foreign_characters))
 		{