Способ искоренить Config::Set в конфигах плагинов

Задача: при выполнении ветви конфига через include исключить изменение текущего конфига

сделал у себя так:
Index: Config.class.php
===================================================================
--- Config.class.php	(revision 50)
+++ Config.class.php	(revision 119)
@@ -271,9 +271,25 @@
 	 */
 	static public function Set($sKey,$value,$sInstance=self::DEFAULT_CONFIG_INSTANCE) {
 		$aKeys=explode('.',$sKey);
+		
+		if(isset($value['$root$']) && is_array($value['$root$'])){
+			$aRoot = $value['$root$'];
+			unset($value['$root$']);
+			foreach($aRoot as $sRk => $mRv){
+				self::Set(
+					$sRk,
+					self::isExist($sRk)
+						? func_array_merge_assoc(Config::Get($sRk, $sInstance), $mRv)
+						: $mRv
+					,
+					$sInstance
+				);
+			}
+		}
+		
 		$sEval='self::getInstance($sInstance)->aConfig';
 		foreach ($aKeys as $sK) {
-			$sEval.='['.var_export($sK, true).']';
+			$sEval.='['.var_export((string)$sK, true).']';
 		}
 		$sEval.='=$value;';
 		eval($sEval);	


теперь чтобы получить доступ к корню глобального конфига из конфига плагина, надо просто добавить префикс "$root$"

например, для того чтобы сказать роутеру о новом экшне, вместо не православного Config::Set в конфиге плагина page можно написать православное
$config['$root$']['router']['page']['page']	= 'PluginPage_ActionPage';