Index: src/libchcore/EngineCfg.cpp
===================================================================
diff -u
--- src/libchcore/EngineCfg.cpp	(revision 0)
+++ src/libchcore/EngineCfg.cpp	(revision 6bc9b521ae26321f21d29a1116d052b1b8746498)
@@ -0,0 +1,43 @@
+/***************************************************************************
+*   Copyright (C) 2001-2008 by J�zef Starosczyk                           *
+*   ixen@copyhandler.com                                                  *
+*                                                                         *
+*   This program is free software; you can redistribute it and/or modify  *
+*   it under the terms of the GNU Library General Public License          *
+*   (version 2) as published by the Free Software Foundation;             *
+*                                                                         *
+*   This program is distributed in the hope that it will be useful,       *
+*   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+*   GNU General Public License for more details.                          *
+*                                                                         *
+*   You should have received a copy of the GNU Library General Public     *
+*   License along with this program; if not, write to the                 *
+*   Free Software Foundation, Inc.,                                       *
+*   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+***************************************************************************/
+#include "stdafx.h"
+#include "../libicpf/cfg.h"
+#include "EngineCfg.h"
+#include "../libicpf/exception.h"
+
+BEGIN_CHCORE_NAMESPACE
+
+engine_config::engine_config(icpf::config::config_base_types eType) :
+	icpf::config(eType)
+{
+}
+
+engine_config::~engine_config()
+{
+}
+
+void engine_config::set_base_path(const tchar_t* pszPath)
+{
+	if(!pszPath)
+		THROW(_T("Invalid argument"), 0, 0, 0);
+	m_strBasePath = pszPath;
+	m_strTasksPath = m_strBasePath + _T("\\tasks\\");
+}
+
+END_CHCORE_NAMESPACE
Index: src/libchcore/EngineCfg.h
===================================================================
diff -u
--- src/libchcore/EngineCfg.h	(revision 0)
+++ src/libchcore/EngineCfg.h	(revision 6bc9b521ae26321f21d29a1116d052b1b8746498)
@@ -0,0 +1,46 @@
+/***************************************************************************
+*   Copyright (C) 2001-2008 by J�zef Starosczyk                           *
+*   ixen@copyhandler.com                                                  *
+*                                                                         *
+*   This program is free software; you can redistribute it and/or modify  *
+*   it under the terms of the GNU Library General Public License          *
+*   (version 2) as published by the Free Software Foundation;             *
+*                                                                         *
+*   This program is distributed in the hope that it will be useful,       *
+*   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+*   GNU General Public License for more details.                          *
+*                                                                         *
+*   You should have received a copy of the GNU Library General Public     *
+*   License along with this program; if not, write to the                 *
+*   Free Software Foundation, Inc.,                                       *
+*   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+***************************************************************************/
+#ifndef __ENGINE_CFG_H__
+#define __ENGINE_CFG_H__
+
+#include "libchcore.h"
+
+BEGIN_CHCORE_NAMESPACE
+
+// contains everything that could be configured inside the engine.
+// supports both the informations contained in the ini file and 
+// ones related to current instance of CH core
+class LIBCHCORE_API engine_config : public icpf::config
+{
+public:
+	engine_config(icpf::config::config_base_types eType);
+	virtual ~engine_config();
+
+	// paths handling
+	void set_base_path(const tchar_t* pszPath);
+	const tchar_t* get_base_path() { return m_strBasePath.c_str(); }
+	const tchar_t* get_tasks_path() { return m_strTasksPath.c_str(); }
+
+private:
+	tstring_t m_strBasePath;
+	tstring_t m_strTasksPath;
+};
+
+END_CHCORE_NAMESPACE
+#endif
Index: src/libchcore/libchcore.h
===================================================================
diff -u -r4ac4e4e70ce8d697bbcc43c3697dc778ff38907e -r6bc9b521ae26321f21d29a1116d052b1b8746498
--- src/libchcore/libchcore.h	(.../libchcore.h)	(revision 4ac4e4e70ce8d697bbcc43c3697dc778ff38907e)
+++ src/libchcore/libchcore.h	(.../libchcore.h)	(revision 6bc9b521ae26321f21d29a1116d052b1b8746498)
@@ -24,5 +24,3 @@
 #define BEGIN_CHCORE_NAMESPACE namespace chcore {
 /// Ends ch namespace
 #define END_CHCORE_NAMESPACE }
-
-int LIBCHCORE_API aa = 0;
Index: src/libchcore/libchcore.vc90.vcproj
===================================================================
diff -u -r2eabdea6d63640f34fb1f8bcf928336cc1a660af -r6bc9b521ae26321f21d29a1116d052b1b8746498
--- src/libchcore/libchcore.vc90.vcproj	(.../libchcore.vc90.vcproj)	(revision 2eabdea6d63640f34fb1f8bcf928336cc1a660af)
+++ src/libchcore/libchcore.vc90.vcproj	(.../libchcore.vc90.vcproj)	(revision 6bc9b521ae26321f21d29a1116d052b1b8746498)
@@ -93,12 +93,11 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Release-Unicode|Win32"
-			OutputDirectory="$(SolutionDir)bin\release"
+			Name="Debug-Unicode|x64"
+			OutputDirectory="$(SolutionDir)bin\debug"
 			IntermediateDirectory="$(SolutionDir)intermediate\$(PlatformName)\$(ProjectName)_$(ConfigurationName)"
 			ConfigurationType="2"
 			CharacterSet="1"
-			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -114,14 +113,16 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
+				TargetEnvironment="3"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
-				Optimization="2"
-				EnableIntrinsicFunctions="true"
-				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCHCORE_EXPORTS"
-				RuntimeLibrary="2"
-				EnableFunctionLevelLinking="true"
+				AdditionalOptions="/analyze"
+				Optimization="0"
+				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCHCORE_EXPORTS"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="3"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
 				DebugInformationFormat="3"
@@ -137,13 +138,11 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
-				OutputFile="$(OutDir)\$(ProjectName)32u.dll"
-				LinkIncremental="1"
+				OutputFile="$(OutDir)\$(ProjectName)64ud.dll"
+				LinkIncremental="2"
 				GenerateDebugInformation="true"
 				SubSystem="2"
-				OptimizeReferences="2"
-				EnableCOMDATFolding="2"
-				TargetMachine="1"
+				TargetMachine="17"
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -168,11 +167,12 @@
 			/>
 		</Configuration>
 		<Configuration
-			Name="Debug-Unicode|x64"
-			OutputDirectory="$(SolutionDir)bin\debug"
+			Name="Release-Unicode|Win32"
+			OutputDirectory="$(SolutionDir)bin\release"
 			IntermediateDirectory="$(SolutionDir)intermediate\$(PlatformName)\$(ProjectName)_$(ConfigurationName)"
 			ConfigurationType="2"
 			CharacterSet="1"
+			WholeProgramOptimization="1"
 			>
 			<Tool
 				Name="VCPreBuildEventTool"
@@ -188,16 +188,14 @@
 			/>
 			<Tool
 				Name="VCMIDLTool"
-				TargetEnvironment="3"
 			/>
 			<Tool
 				Name="VCCLCompilerTool"
-				AdditionalOptions="/analyze"
-				Optimization="0"
-				PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBCHCORE_EXPORTS"
-				MinimalRebuild="true"
-				BasicRuntimeChecks="3"
-				RuntimeLibrary="3"
+				Optimization="2"
+				EnableIntrinsicFunctions="true"
+				PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBCHCORE_EXPORTS"
+				RuntimeLibrary="2"
+				EnableFunctionLevelLinking="true"
 				UsePrecompiledHeader="2"
 				WarningLevel="4"
 				DebugInformationFormat="3"
@@ -213,11 +211,13 @@
 			/>
 			<Tool
 				Name="VCLinkerTool"
-				OutputFile="$(OutDir)\$(ProjectName)64ud.dll"
-				LinkIncremental="2"
+				OutputFile="$(OutDir)\$(ProjectName)32u.dll"
+				LinkIncremental="1"
 				GenerateDebugInformation="true"
 				SubSystem="2"
-				TargetMachine="17"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				TargetMachine="1"
 			/>
 			<Tool
 				Name="VCALinkTool"
@@ -339,7 +339,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release-Unicode|Win32"
+					Name="Debug-Unicode|x64"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -348,7 +348,7 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug-Unicode|x64"
+					Name="Release-Unicode|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -367,6 +367,10 @@
 				</FileConfiguration>
 			</File>
 			<File
+				RelativePath=".\EngineCfg.cpp"
+				>
+			</File>
+			<File
 				RelativePath=".\libchcore.cpp"
 				>
 			</File>
@@ -382,15 +386,15 @@
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Release-Unicode|Win32"
+					Name="Debug-Unicode|x64"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
 						UsePrecompiledHeader="1"
 					/>
 				</FileConfiguration>
 				<FileConfiguration
-					Name="Debug-Unicode|x64"
+					Name="Release-Unicode|Win32"
 					>
 					<Tool
 						Name="VCCLCompilerTool"
@@ -413,6 +417,10 @@
 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
 			>
 			<File
+				RelativePath=".\EngineCfg.h"
+				>
+			</File>
+			<File
 				RelativePath=".\libchcore.h"
 				>
 			</File>