diff --git a/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj b/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj
index 0dac5ef96e6c519fb1c3f7150a6c402168ccc6db..4b40fd426bed100e74fd160e21ec1b7174f2e13f 100644
--- a/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj
+++ b/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj
@@ -19,12 +19,6 @@
     </ProjectConfiguration>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">NotUsing</PrecompiledHeader>
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">NotUsing</PrecompiledHeader>
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">NotUsing</PrecompiledHeader>
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">NotUsing</PrecompiledHeader>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\exporter_base\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\exporter_base\Exporter.cpp" />
     <ClCompile Include="..\..\..\source\exporter_base\Extended.cpp" />
diff --git a/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj.filters b/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj.filters
index acedeb6a4c88463f61e8b2361083c36eb5a24ffa..ecdf20a8dd791b5aa33ea3fd297ce776efc901d0 100644
--- a/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj.filters
+++ b/proj/msDSEExporter/vs2013/msDSEExporter.vcxproj.filters
@@ -27,9 +27,6 @@
     <ClCompile Include="..\..\..\source\msDSEExporter\Plugin.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\msDSEExporter\Provider.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/oggplugin/vs2013/oggplugin.vcxproj b/proj/oggplugin/vs2013/oggplugin.vcxproj
index f6a2a648c33f2523b8556fe55c0be7e5e4e3de57..f279cf87cff38e3bf9deb34224b8a7dcc3488450 100644
--- a/proj/oggplugin/vs2013/oggplugin.vcxproj
+++ b/proj/oggplugin/vs2013/oggplugin.vcxproj
@@ -174,7 +174,6 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\oggplugin\AudioCodecOgg.cpp" />
     <ClCompile Include="..\..\..\source\oggplugin\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\oggplugin\plugin_main.cpp" />
diff --git a/proj/oggplugin/vs2013/oggplugin.vcxproj.filters b/proj/oggplugin/vs2013/oggplugin.vcxproj.filters
index 6811cfc3b9cc4bd1581c9f7ef7e21703e0f942e5..2c8cb6fb66b79b802bbd2acf17ab351a3b38c1c8 100644
--- a/proj/oggplugin/vs2013/oggplugin.vcxproj.filters
+++ b/proj/oggplugin/vs2013/oggplugin.vcxproj.filters
@@ -22,9 +22,6 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\source\oggplugin\plugin_main.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\oggplugin\AudioCodecOgg.h">
diff --git a/proj/sxae/vs2013/sxae.vcxproj b/proj/sxae/vs2013/sxae.vcxproj
index bbc11f73bfccf06ac6d7055b0a799dc83ec23c16..dc75b53c244946c011681a7ca9c26ebaf96237e3 100644
--- a/proj/sxae/vs2013/sxae.vcxproj
+++ b/proj/sxae/vs2013/sxae.vcxproj
@@ -96,7 +96,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild>
diff --git a/proj/sxae/vs2013/sxae.vcxproj.filters b/proj/sxae/vs2013/sxae.vcxproj.filters
index 3c5b935d6c7164cdeaf3e484c093209403ffd38e..0b9f9cf9ebb2c393ea804c239b927a3e369f4005 100644
--- a/proj/sxae/vs2013/sxae.vcxproj.filters
+++ b/proj/sxae/vs2013/sxae.vcxproj.filters
@@ -57,9 +57,6 @@
     <ClCompile Include="..\..\..\source\sxae\TabHitboxes.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxambient/vs2013/sxambient.vcxproj b/proj/sxambient/vs2013/sxambient.vcxproj
index 49c13dc6fb4431addb1c7056e8f38054b6ebd3aa..dc8ccf2c8b57c350b9e924218831963f767ef2da 100644
--- a/proj/sxambient/vs2013/sxambient.vcxproj
+++ b/proj/sxambient/vs2013/sxambient.vcxproj
@@ -186,12 +186,6 @@
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\string_utils.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
diff --git a/proj/sxambient/vs2013/sxambient.vcxproj.filters b/proj/sxambient/vs2013/sxambient.vcxproj.filters
index 35b20d5a991f78d4a1e714122c148f5e2185af71..69dfb63bc45c337ce29bd993d822e06e6661a177 100644
--- a/proj/sxambient/vs2013/sxambient.vcxproj.filters
+++ b/proj/sxambient/vs2013/sxambient.vcxproj.filters
@@ -30,9 +30,6 @@
     <ClCompile Include="..\..\..\source\level\sxlevel.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxanim/vs2013/sxanim.vcxproj b/proj/sxanim/vs2013/sxanim.vcxproj
index 5db828bb30b68066bab323134d8852248abe2bd3..bd4a7d117b7fa96a3a354af493a33fc234c34eac 100644
--- a/proj/sxanim/vs2013/sxanim.vcxproj
+++ b/proj/sxanim/vs2013/sxanim.vcxproj
@@ -189,7 +189,6 @@
     <ClCompile Include="..\..\..\source\anim\Renderable.cpp" />
     <ClCompile Include="..\..\..\source\anim\RenderableVisibility.cpp" />
     <ClCompile Include="..\..\..\source\anim\Updatable.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\anim\AnimatedModel.h" />
diff --git a/proj/sxanim/vs2013/sxanim.vcxproj.filters b/proj/sxanim/vs2013/sxanim.vcxproj.filters
index 54b74f26893854001719bc2841ccf10a4ee93e18..1db63868b08793ae349c2374e6c93b2f85f5ed5b 100644
--- a/proj/sxanim/vs2013/sxanim.vcxproj.filters
+++ b/proj/sxanim/vs2013/sxanim.vcxproj.filters
@@ -18,9 +18,6 @@
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\anim\Renderable.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxcore/vs2013/sxcore.vcxproj b/proj/sxcore/vs2013/sxcore.vcxproj
index 44886dbddb45c65b3f818ae0d822c7444be8ec85..76c5c2bbd0d4a0be8d2b811f7abb7563e6af5e31 100644
--- a/proj/sxcore/vs2013/sxcore.vcxproj
+++ b/proj/sxcore/vs2013/sxcore.vcxproj
@@ -21,7 +21,6 @@
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\core\AsyncFileReader.cpp" />
     <ClCompile Include="..\..\..\source\core\AsyncTaskRunner.cpp" />
diff --git a/proj/sxcore/vs2013/sxcore.vcxproj.filters b/proj/sxcore/vs2013/sxcore.vcxproj.filters
index 9faae7aa26d1072dcd4f4ca0899f5578841cb7fe..7a2f4723f5d59147eebf1bd6a9253f413c71b672 100644
--- a/proj/sxcore/vs2013/sxcore.vcxproj.filters
+++ b/proj/sxcore/vs2013/sxcore.vcxproj.filters
@@ -25,9 +25,6 @@
     <ClCompile Include="..\..\..\source\core\Config.cpp">
       <Filter>Sources</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Sources</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Sources</Filter>
     </ClCompile>
diff --git a/proj/sxgame/vs2013/sxgame.vcxproj b/proj/sxgame/vs2013/sxgame.vcxproj
index ed2254be7a058b4d6c1e7c30706b82c90624826a..6b2bc8d735699766e886b7b69dfee7e44688adcd 100644
--- a/proj/sxgame/vs2013/sxgame.vcxproj
+++ b/proj/sxgame/vs2013/sxgame.vcxproj
@@ -177,7 +177,6 @@
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\game\BaseHandle.cpp" />
     <ClCompile Include="..\..\..\source\game\BaseLight.cpp" />
diff --git a/proj/sxgame/vs2013/sxgame.vcxproj.filters b/proj/sxgame/vs2013/sxgame.vcxproj.filters
index a55e5221581f52b1d4122d9d45a574bf1fd7af2e..ad313030c273047139c37747e35db9ac6b354975 100644
--- a/proj/sxgame/vs2013/sxgame.vcxproj.filters
+++ b/proj/sxgame/vs2013/sxgame.vcxproj.filters
@@ -138,9 +138,6 @@
     <ClCompile Include="..\..\..\source\game\EntityFactory.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\game\EntityManager.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj b/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj
index 7f122d3621569fe301cef423e7034c54410888d9..ab005f3e7f5d66103b5e21ff0eb1eb528610511a 100644
--- a/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj
+++ b/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj
@@ -94,7 +94,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp" />
     <ClCompile Include="..\..\..\source\sxgenpreview\sxgenpreview.cpp" />
diff --git a/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj.filters b/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj.filters
index a5742b1b70341c23aef02f681aa3f9f712a015a8..a8dd1d5fc23cbf0237f88190495660ab527db1e3 100644
--- a/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj.filters
+++ b/proj/sxgenpreview/vs2013/sxgenpreview.vcxproj.filters
@@ -21,9 +21,6 @@
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxgreen/sxgreen/sxgreen.vcxproj b/proj/sxgreen/sxgreen/sxgreen.vcxproj
index 2eda957b846263c65e6cb8bac30e74b871f2ef4e..ec21b341c0d7433680f2b6cb50305c195a402820 100644
--- a/proj/sxgreen/sxgreen/sxgreen.vcxproj
+++ b/proj/sxgreen/sxgreen/sxgreen.vcxproj
@@ -178,7 +178,6 @@
     <ClInclude Include="..\..\..\source\green\sxgreen.h" />
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\green\green.cpp" />
     <ClCompile Include="..\..\..\source\green\sxgreen.cpp" />
     <ClCompile Include="..\..\..\source\green\sxgreen_dll.cpp" />
diff --git a/proj/sxgreen/sxgreen/sxgreen.vcxproj.filters b/proj/sxgreen/sxgreen/sxgreen.vcxproj.filters
index 7d086b127ffbbab6271208a016119431e18a6694..3cd9959933e57417d1361f033ef6d51cba1b557f 100644
--- a/proj/sxgreen/sxgreen/sxgreen.vcxproj.filters
+++ b/proj/sxgreen/sxgreen/sxgreen.vcxproj.filters
@@ -35,8 +35,5 @@
     <ClCompile Include="..\..\..\source\green\sxgreen.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/proj/sxgui/vs2013/sxgui.vcxproj b/proj/sxgui/vs2013/sxgui.vcxproj
index 20a5301f425a9c32355ab91a0027d9be8697c584..79c65b41f962166be7a1dac4290f838ffb58e207 100644
--- a/proj/sxgui/vs2013/sxgui.vcxproj
+++ b/proj/sxgui/vs2013/sxgui.vcxproj
@@ -241,7 +241,6 @@
     <ClInclude Include="..\..\..\source\gui\ITD.h" />
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\gui\CSSstyle.cpp" />
     <ClCompile Include="..\..\..\source\gui\IBODY.cpp" />
     <ClCompile Include="..\..\..\source\gui\IBR.cpp" />
diff --git a/proj/sxgui/vs2013/sxgui.vcxproj.filters b/proj/sxgui/vs2013/sxgui.vcxproj.filters
index e742664b72bf81314a9ef98e9d50d83b04fb9b4a..2e3bc8f4b214a279cc0794838ed0d10535611e32 100644
--- a/proj/sxgui/vs2013/sxgui.vcxproj.filters
+++ b/proj/sxgui/vs2013/sxgui.vcxproj.filters
@@ -308,9 +308,6 @@
     <ClCompile Include="..\..\..\source\gui\VideoRenderer.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\gui\ICSSstyle.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxgui2/vs2013/sxgui2.vcxproj b/proj/sxgui2/vs2013/sxgui2.vcxproj
index be80b15a6962ba50b12f80faf7dafd25e3dd3416..4a60a42afaf36331691553762f13f693126daf1d 100644
--- a/proj/sxgui2/vs2013/sxgui2.vcxproj
+++ b/proj/sxgui2/vs2013/sxgui2.vcxproj
@@ -19,7 +19,6 @@
     </ProjectConfiguration>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\gui2\CSSLexer.cpp" />
     <ClCompile Include="..\..\..\source\gui2\CSSProperty.cpp" />
     <ClCompile Include="..\..\..\source\gui2\Desktop.cpp" />
diff --git a/proj/sxgui2/vs2013/sxgui2.vcxproj.filters b/proj/sxgui2/vs2013/sxgui2.vcxproj.filters
index 147e6315d56037744af0ea984a2ef01e62d7d420..d91712645e1df7be0fd982e715f5cf7ae87da1cf 100644
--- a/proj/sxgui2/vs2013/sxgui2.vcxproj.filters
+++ b/proj/sxgui2/vs2013/sxgui2.vcxproj.filters
@@ -49,9 +49,6 @@
     <ClCompile Include="..\..\..\source\gui2\FontManager.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\xcommon\gui\IXDesktop.h">
diff --git a/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj b/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj
index d5b37e03af67340b1980fa2482d0c9d2c281af6e..d9702a8d08c44dc30716d06adc2caf1290da215d 100644
--- a/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj
+++ b/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj
@@ -12,7 +12,6 @@
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\SXGUIWinApi\base.cpp" />
     <ClCompile Include="..\..\..\source\SXGUIWinApi\base_wnd.cpp" />
diff --git a/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj.filters b/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj.filters
index 346c7ffdd25cb87feb4a2aeefb7544f1feb33b85..f4bd08eb752d7a9999cc36f61138b62724b3b1ad 100644
--- a/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj.filters
+++ b/proj/sxguiwinapi/vs2013/sxguiwinapi.vcxproj.filters
@@ -84,9 +84,6 @@
     <ClCompile Include="..\..\..\source\SXGUIWinApi\dialog_select_dir.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\SXGUIWinApi\dialog_select_file.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj b/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj
index 54637a3266e5d534c6d9610df14fc78ccf4b3f5d..b761091d68ce1c7a42c6ae3037bc016fa3d2c693 100644
--- a/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj
+++ b/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj
@@ -94,7 +94,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\editors_utils\axes_helper.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp" />
diff --git a/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj.filters b/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj.filters
index 2f1709240240c769f6ba82ee927746722f75048b..a280298b7a9b10aee3a5929938c6843aa5ac79d0 100644
--- a/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj.filters
+++ b/proj/sxleveleditor/vs2013/sxleveleditor.vcxproj.filters
@@ -42,9 +42,6 @@
     <ClCompile Include="..\..\..\source\editors_utils\axes_helper.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj b/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj
index 4ba27d1f2e7a1d62207bef5384024f6cfd5985fb..54d8769a14cb6ce0ca8c55ec59fdea8eb26b5e87 100644
--- a/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj
+++ b/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj
@@ -94,7 +94,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp" />
     <ClCompile Include="..\..\..\source\sxmaterialeditor\buttons_callback.cpp">
diff --git a/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj.filters b/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj.filters
index 47a31e8a5fe410f28aca68eebb98daf36e1c510f..2e82289cd82e1e122a27ce48fb392b06731e4b6e 100644
--- a/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj.filters
+++ b/proj/sxmaterialeditor/vs2013/sxmaterialeditor.vcxproj.filters
@@ -42,9 +42,6 @@
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxmtrl/vs2013/sxmtrl.vcxproj b/proj/sxmtrl/vs2013/sxmtrl.vcxproj
index 2defc0c718b37879a513f90bb9e6e160a3391f6b..126b3c9978385cdbf59f6538583b5989e9b9d66b 100644
--- a/proj/sxmtrl/vs2013/sxmtrl.vcxproj
+++ b/proj/sxmtrl/vs2013/sxmtrl.vcxproj
@@ -171,7 +171,6 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\mtrl\LogicExpression.cpp" />
     <ClCompile Include="..\..\..\source\mtrl\MaterialSystem.cpp" />
     <ClCompile Include="..\..\..\source\mtrl\plugin_main.cpp" />
diff --git a/proj/sxmtrl/vs2013/sxmtrl.vcxproj.filters b/proj/sxmtrl/vs2013/sxmtrl.vcxproj.filters
index 556583a8857c31bf00d8b6c851c7af52b894ebb6..a2a53a7ee64ba10ed2267e94f501bd990291a2af 100644
--- a/proj/sxmtrl/vs2013/sxmtrl.vcxproj.filters
+++ b/proj/sxmtrl/vs2013/sxmtrl.vcxproj.filters
@@ -18,9 +18,6 @@
     </Filter>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\mtrl\MaterialSystem.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxparticles/vs2013/sxparticles.vcxproj b/proj/sxparticles/vs2013/sxparticles.vcxproj
index db6a76ae81b48065d7f2f9b58698e8c10a036d1b..af0ac95fe58206fea125c6d5b7b3b9490c9a33be 100644
--- a/proj/sxparticles/vs2013/sxparticles.vcxproj
+++ b/proj/sxparticles/vs2013/sxparticles.vcxproj
@@ -178,7 +178,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\particles\effect.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild>
diff --git a/proj/sxparticles/vs2013/sxparticles.vcxproj.filters b/proj/sxparticles/vs2013/sxparticles.vcxproj.filters
index c5fa3d4d23452be16bddf05e3390dfb05c6278e6..0759bd9e4c9d24258d7fe596d9b744e76861575e 100644
--- a/proj/sxparticles/vs2013/sxparticles.vcxproj.filters
+++ b/proj/sxparticles/vs2013/sxparticles.vcxproj.filters
@@ -27,9 +27,6 @@
     <ClCompile Include="..\..\..\source\particles\effect.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj b/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj
index 0a8a4b7329bbf3988677cc1ded3d0470851e907a..4a34bbcefcac880f5656c5cf9b5bf1f0435b34a4 100644
--- a/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj
+++ b/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj
@@ -94,7 +94,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp" />
     <ClCompile Include="..\..\..\source\sxparticleseditor\callback_common.cpp">
diff --git a/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj.filters b/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj.filters
index 9f8f4897b5e8f8c5c0e46d8d06d05fe249b669a9..6cac98a6e83d43a2229ed9b0aba58f918b1a8d66 100644
--- a/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj.filters
+++ b/proj/sxparticleseditor/vs2013/sxparticleseditor.vcxproj.filters
@@ -33,9 +33,6 @@
     <ClCompile Include="..\..\..\source\sxparticleseditor\callback_list.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxphysics/vs2013/sxphysics.vcxproj b/proj/sxphysics/vs2013/sxphysics.vcxproj
index c063e34acc98f937e4ee88fbfa1db8cf2f33fd86..e327650bbc2b9b720baab939ebd0143a64feddaf 100644
--- a/proj/sxphysics/vs2013/sxphysics.vcxproj
+++ b/proj/sxphysics/vs2013/sxphysics.vcxproj
@@ -174,7 +174,6 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\physics\CharacterController.cpp" />
     <ClCompile Include="..\..\..\source\physics\CollisionObject.cpp" />
diff --git a/proj/sxphysics/vs2013/sxphysics.vcxproj.filters b/proj/sxphysics/vs2013/sxphysics.vcxproj.filters
index 9d75b2bfebf68daf795f56ef25a725b4f4e3aa6c..cb4b3c0159fa69f91530cdab25993550b707889a 100644
--- a/proj/sxphysics/vs2013/sxphysics.vcxproj.filters
+++ b/proj/sxphysics/vs2013/sxphysics.vcxproj.filters
@@ -24,9 +24,6 @@
     <ClCompile Include="..\..\..\source\physics\PhyWorld.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/sxrender/vs2013/sxrender.vcxproj b/proj/sxrender/vs2013/sxrender.vcxproj
index 20a0cf87981bda29025bc776cf49e70128096b7e..9a60037fa2eb809a7dac88820c18c209c52db90e 100644
--- a/proj/sxrender/vs2013/sxrender.vcxproj
+++ b/proj/sxrender/vs2013/sxrender.vcxproj
@@ -224,7 +224,6 @@
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\render\BaseTarget.cpp" />
     <ClCompile Include="..\..\..\source\render\Camera.cpp" />
diff --git a/proj/sxrender/vs2013/sxrender.vcxproj.filters b/proj/sxrender/vs2013/sxrender.vcxproj.filters
index 94b82a6504b8b9370cb1ed598cb52e58f4441274..48693c71cca4da1427a1733da49964c1a0b4a135 100644
--- a/proj/sxrender/vs2013/sxrender.vcxproj.filters
+++ b/proj/sxrender/vs2013/sxrender.vcxproj.filters
@@ -116,9 +116,6 @@
     </ClInclude>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\render\RenderableVisibility.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/terrax/vs2013/terrax.vcxproj b/proj/terrax/vs2013/terrax.vcxproj
index 3714e7454c5446f0fc1fa17a452affecb38d0674..fad89107a72f7c7eefc68fbdd5884a7f2d5b1e37 100644
--- a/proj/terrax/vs2013/terrax.vcxproj
+++ b/proj/terrax/vs2013/terrax.vcxproj
@@ -195,7 +195,6 @@
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp" />
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\common\string_utils.cpp" />
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
diff --git a/proj/terrax/vs2013/terrax.vcxproj.filters b/proj/terrax/vs2013/terrax.vcxproj.filters
index c7f15f1fc8863e186cc481aa6a876468a8a27a9d..919fa263ed4e46045b8d5715f2b3abe0c6500dfc 100644
--- a/proj/terrax/vs2013/terrax.vcxproj.filters
+++ b/proj/terrax/vs2013/terrax.vcxproj.filters
@@ -57,9 +57,6 @@
     <ClCompile Include="..\..\..\source\skyxengine.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\common\file_utils.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/wadplugin/vs2013/wadplugin.vcxproj b/proj/wadplugin/vs2013/wadplugin.vcxproj
index 9d6ee1bb6a89ff9b9d535b00baa28fcb7fcf2811..ee4f5c663f7f3a674c83bc2096d8a27f5af8ac68 100644
--- a/proj/wadplugin/vs2013/wadplugin.vcxproj
+++ b/proj/wadplugin/vs2013/wadplugin.vcxproj
@@ -19,7 +19,6 @@
     </ProjectConfiguration>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\wadplugin\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\wadplugin\plugin_main.cpp" />
     <ClCompile Include="..\..\..\source\wadplugin\TextureLoader.cpp" />
diff --git a/proj/wadplugin/vs2013/wadplugin.vcxproj.filters b/proj/wadplugin/vs2013/wadplugin.vcxproj.filters
index 8ac55cf8a9ebc7c1e31108fc3297b1e848c49f39..b6a8ceb9fe868a17d7c796e73c04c43b065a742e 100644
--- a/proj/wadplugin/vs2013/wadplugin.vcxproj.filters
+++ b/proj/wadplugin/vs2013/wadplugin.vcxproj.filters
@@ -25,9 +25,6 @@
     <ClCompile Include="..\..\..\source\wadplugin\TextureProxy.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\wadplugin\TextureLoader.h">
diff --git a/proj/wavplugin/vs2013/wavplugin.vcxproj b/proj/wavplugin/vs2013/wavplugin.vcxproj
index fe9aa5dc348677274e033ecd7ceee81c298c6dc2..4c34641e261a1b8f9d166b8d87ac6abcfdf4ecee 100644
--- a/proj/wavplugin/vs2013/wavplugin.vcxproj
+++ b/proj/wavplugin/vs2013/wavplugin.vcxproj
@@ -159,7 +159,6 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\wavplugin\AudioCodecWave.cpp" />
     <ClCompile Include="..\..\..\source\wavplugin\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\wavplugin\plugin_main.cpp" />
diff --git a/proj/wavplugin/vs2013/wavplugin.vcxproj.filters b/proj/wavplugin/vs2013/wavplugin.vcxproj.filters
index d92acb38921c4cfda2b03602b2fffb7d23a3c857..7a0ba1c846bc88201af3eb514cd4b420626bbc0b 100644
--- a/proj/wavplugin/vs2013/wavplugin.vcxproj.filters
+++ b/proj/wavplugin/vs2013/wavplugin.vcxproj.filters
@@ -22,9 +22,6 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\source\wavplugin\plugin_main.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\wavplugin\AudioCodecWave.h">
diff --git a/proj/xCSG/vs2013/xCSG.vcxproj b/proj/xCSG/vs2013/xCSG.vcxproj
index 446f41f63324bf7344c0a9fa6bea21a7822c3eea..7b9eef946222811d2a8b593eb20e42d5646f1642 100644
--- a/proj/xCSG/vs2013/xCSG.vcxproj
+++ b/proj/xCSG/vs2013/xCSG.vcxproj
@@ -20,7 +20,6 @@
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\xcsg\BrushCreatorBox.cpp" />
     <ClCompile Include="..\..\..\source\xcsg\BrushCreatorFree.cpp" />
     <ClCompile Include="..\..\..\source\xcsg\BrushMesh.cpp" />
diff --git a/proj/xCSG/vs2013/xCSG.vcxproj.filters b/proj/xCSG/vs2013/xCSG.vcxproj.filters
index 85c4409a86facd4e7ef75266a0b099bb9e6ea545..a8202fa58e86b78b7e2e72e743c3b0423d02786d 100644
--- a/proj/xCSG/vs2013/xCSG.vcxproj.filters
+++ b/proj/xCSG/vs2013/xCSG.vcxproj.filters
@@ -37,9 +37,6 @@
     <ClCompile Include="..\..\..\source\xcsg\Editable.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\xcsg\Outline.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/xEngine/vs2013/xEngine.vcxproj b/proj/xEngine/vs2013/xEngine.vcxproj
index 2595ac7211d9f1f8e67f69753504403fb29c3263..94f72003f741e0d4ce6b04a0f9e94a5058cf18b4 100644
--- a/proj/xEngine/vs2013/xEngine.vcxproj
+++ b/proj/xEngine/vs2013/xEngine.vcxproj
@@ -179,7 +179,6 @@
     </Link>
   </ItemDefinitionGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\xEngine\CommandLineToArgvA.cpp" />
     <ClCompile Include="..\..\..\source\xEngine\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\xEngine\Engine.cpp" />
diff --git a/proj/xEngine/vs2013/xEngine.vcxproj.filters b/proj/xEngine/vs2013/xEngine.vcxproj.filters
index 67b9b20d6e90515e4f392356200d8a411bbd61dc..56c14a0234483508abc5b4ff860c2aef9d465cc5 100644
--- a/proj/xEngine/vs2013/xEngine.vcxproj.filters
+++ b/proj/xEngine/vs2013/xEngine.vcxproj.filters
@@ -24,9 +24,6 @@
     <ClCompile Include="..\..\..\source\xEngine\CommandLineToArgvA.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\xEngine\Engine.h">
diff --git a/proj/xParticles/vs2013/xParticles.vcxproj b/proj/xParticles/vs2013/xParticles.vcxproj
index 3e9a04dee83388d9f52c60c677b38cfb7dc5ce65..6735b27297947599759b328aa81284464185e0cf 100644
--- a/proj/xParticles/vs2013/xParticles.vcxproj
+++ b/proj/xParticles/vs2013/xParticles.vcxproj
@@ -19,7 +19,6 @@
     </ProjectConfiguration>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\xParticles\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\xParticles\Editable.cpp" />
     <ClCompile Include="..\..\..\source\xParticles\EditorExtension.cpp" />
diff --git a/proj/xParticles/vs2013/xParticles.vcxproj.filters b/proj/xParticles/vs2013/xParticles.vcxproj.filters
index 8eebf1833b0a49d001f79604922a70f5d887a2d4..be26e103897bdab0e0b6a1a615ac18bf78fd2b1d 100644
--- a/proj/xParticles/vs2013/xParticles.vcxproj.filters
+++ b/proj/xParticles/vs2013/xParticles.vcxproj.filters
@@ -46,9 +46,6 @@
     <ClCompile Include="..\..\..\source\xParticles\EffectLoader.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\xParticles\Updatable.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/proj/xSpecs/vs2013/xSpecs.vcxproj b/proj/xSpecs/vs2013/xSpecs.vcxproj
index d27e69f1fc24204e7fd7a9f912f0388df061d431..c3d94c88d558374ac95d70ee08f2eab8aeed3250 100644
--- a/proj/xSpecs/vs2013/xSpecs.vcxproj
+++ b/proj/xSpecs/vs2013/xSpecs.vcxproj
@@ -19,7 +19,6 @@
     </ProjectConfiguration>
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\xSpecs\dllmain.cpp" />
     <ClCompile Include="..\..\..\source\xSpecs\MaterialLoader.cpp" />
     <ClCompile Include="..\..\..\source\xSpecs\MaterialProxy.cpp" />
diff --git a/proj/xSpecs/vs2013/xSpecs.vcxproj.filters b/proj/xSpecs/vs2013/xSpecs.vcxproj.filters
index 4db0e36bc9a014bb36631418704927b4717f659e..e438dc681ca5d4f2465dd9b0ffbf25010cc3383f 100644
--- a/proj/xSpecs/vs2013/xSpecs.vcxproj.filters
+++ b/proj/xSpecs/vs2013/xSpecs.vcxproj.filters
@@ -28,9 +28,6 @@
     <ClCompile Include="..\..\..\source\xSpecs\MaterialLoader.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\..\source\xSpecs\TextureProxy.h">
diff --git a/proj/xUI/vs2013/xUI.vcxproj b/proj/xUI/vs2013/xUI.vcxproj
index f925267b00c5fe54af197a4c64cbce3fa361d9e1..033aaf44d7457d0418dee7c9befc1db2a3e167b4 100644
--- a/proj/xUI/vs2013/xUI.vcxproj
+++ b/proj/xUI/vs2013/xUI.vcxproj
@@ -69,7 +69,6 @@
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\source\common\guid.cpp" />
-    <ClCompile Include="..\..\..\source\common\string.cpp" />
     <ClCompile Include="..\..\..\source\xUI\CurvePreviewGraphNode.cpp" />
     <ClCompile Include="..\..\..\source\xUI\CurvePreviewGraphNodeData.cpp" />
     <ClCompile Include="..\..\..\source\xUI\GradientPreviewGraphNodeData.cpp" />
diff --git a/proj/xUI/vs2013/xUI.vcxproj.filters b/proj/xUI/vs2013/xUI.vcxproj.filters
index 531c6e555bc477605ec655dbce043a12ab5d2cde..5912ed89b5b765a42e2e110c41bb4a2a1375a16f 100644
--- a/proj/xUI/vs2013/xUI.vcxproj.filters
+++ b/proj/xUI/vs2013/xUI.vcxproj.filters
@@ -173,9 +173,6 @@
     <ClCompile Include="..\..\..\source\xUI\UIButton.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
-    <ClCompile Include="..\..\..\source\common\string.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
     <ClCompile Include="..\..\..\source\xUI\UITextBox.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
diff --git a/sdks/graphix b/sdks/graphix
index 27fedecbe4e3921dd1da215c65a6886755c1a498..d8eeb9ae81fae1256034680abeb5b3dc14608770 160000
--- a/sdks/graphix
+++ b/sdks/graphix
@@ -1 +1 @@
-Subproject commit 27fedecbe4e3921dd1da215c65a6886755c1a498
+Subproject commit d8eeb9ae81fae1256034680abeb5b3dc14608770
diff --git a/sdks/mital b/sdks/mital
index c814073bb3bce76b111684d7afb7d74d303f55bf..384aa665b3e46cb12a4cc2f2e0b418f925b8bbd1 160000
--- a/sdks/mital
+++ b/sdks/mital
@@ -1 +1 @@
-Subproject commit c814073bb3bce76b111684d7afb7d74d303f55bf
+Subproject commit 384aa665b3e46cb12a4cc2f2e0b418f925b8bbd1
diff --git a/source/SkyXEngine_Build/SkyXEngine_Build.cpp b/source/SkyXEngine_Build/SkyXEngine_Build.cpp
index 27dd74683de49304a6a630046cc34335b1fa2241..f5c616e0d03a0b3f46aa4a41f3a2c6012d946f0b 100644
--- a/source/SkyXEngine_Build/SkyXEngine_Build.cpp
+++ b/source/SkyXEngine_Build/SkyXEngine_Build.cpp
@@ -154,7 +154,7 @@ int main(int argc, char **argv)
 	pEngine->getCore()->getConsole()->execCommand("exec ../config_game.cfg");
 	pEngine->getCore()->getConsole()->execCommand("exec ../config_game_user.cfg");
 
-#if 1
+#if 0
 
 	IFileSystem *pFS = pEngine->getCore()->getFileSystem();
 	IFile *pFile1 = pFS->openFile("dir/test.txt", FILE_MODE_READ);
diff --git a/source/common b/source/common
index fab676418d9c07fcbb558bca8becc9e7b835f62d..8103fff484d6dd1f7006973af8bf581334d8ea1e 160000
--- a/source/common
+++ b/source/common
@@ -1 +1 @@
-Subproject commit fab676418d9c07fcbb558bca8becc9e7b835f62d
+Subproject commit 8103fff484d6dd1f7006973af8bf581334d8ea1e
diff --git a/source/core/Config.cpp b/source/core/Config.cpp
index fa9a82e091a16fa29d5966cb2e72efab2459036b..2f336a6083ffe5365da016044463d7cbdb3594d6 100644
--- a/source/core/Config.cpp
+++ b/source/core/Config.cpp
@@ -152,7 +152,7 @@ int CConfig::parse(const char* file)
 					{
 						for(AssotiativeArray<CConfigString, CValue>::Iterator i = m_mSections[s3].mValues.begin(); i; ++i)
 						{
-							m_mSections[s2].mValues[i.first].val = i.second->val;
+							m_mSections[s2].mValues[*i.first].val = i.second->val;
 						}
 					}
 				}
@@ -187,7 +187,7 @@ int CConfig::parse(const char* file)
 					{
 						for(AssotiativeArray<CConfigString, CValue>::Iterator i = m_mSections[s3].mValues.begin(); i; ++i)
 						{
-							m_mSections[s2].mValues[i.first].val = i.second->val;
+							m_mSections[s2].mValues[*i.first].val = i.second->val;
 						}
 					}
 				}
@@ -332,20 +332,20 @@ void CConfig::modify(AssotiativeArray<CConfigString, CSection> & sections, Assot
 {
 	for(AssotiativeArray<CConfigString, CValue>::Iterator i = m_mFinalValues.begin(); i; ++i)
 	{
-		values[i.first].val = i.second->val;
+		values[*i.first].val = i.second->val;
 	}
 
 	for(AssotiativeArray<CConfigString, CSection>::Iterator i = m_mSections.begin(); i; ++i)
 	{
-		if(!sections.KeyExists(i.first))
+		if(!sections.KeyExists(*i.first))
 		{
-			sections[i.first].parent = i.second->parent;
-			sections[i.first].native = false;
-			sections[i.first].Include = IncName;
+			sections[*i.first].parent = i.second->parent;
+			sections[*i.first].native = false;
+			sections[*i.first].Include = IncName;
 		}
-		for(AssotiativeArray<CConfigString, CValue>::Iterator j = m_mSections[i.first].mValues.begin(); j; ++j)
+		for(AssotiativeArray<CConfigString, CValue>::Iterator j = m_mSections[*i.first].mValues.begin(); j; ++j)
 		{
-			sections[i.first].mValues[j.first].val = j.second->val;
+			sections[*i.first].mValues[*j.first].val = j.second->val;
 		}
 	}
 }
diff --git a/source/core/Config.h b/source/core/Config.h
index 8b5587560ac1b3ee0487703f08c19646ecf65853..a921ce2cac390b981e2ef30e75072363085586cc 100644
--- a/source/core/Config.h
+++ b/source/core/Config.h
@@ -18,57 +18,22 @@ See the license in LICENSE
 class CConfigString: public String
 {
 public:
-	CConfigString() : String(){}
-	CConfigString(const char * str) : String(str){}
-	CConfigString(const String & str) : String(str){}
-	CConfigString(const CConfigString & str) : String(str){}
-	CConfigString(const CConfigString * str) : String(str){}
-	CConfigString(const char sym) : String(sym){}
-	~CConfigString() {}
-	
-	const char & operator[](const unsigned long & num) const
-	{
-		return(m_szString[num]);
-	}
-
-	char & operator[](const unsigned long & num)
-	{
-		return(m_szString[num]);
-	}
+	CConfigString(): String(){}
+	CConfigString(const char *str): String(str){}
+	CConfigString(const String &str): String(str){}
+	CConfigString(const CConfigString &str): String(str){}
+	CConfigString(char sym): String(sym){}
 
-	CConfigString & operator=(const CConfigString & str)
+	CConfigString& operator=(const CConfigString &str)
 	{
-		release();
-		m_szString = new char[str.length() + 1];
-		memcpy(m_szString, str.c_str(), str.length() + 1);
-		return(*this);
-	}
+		String::operator=(str);
 
-	CConfigString & operator=(const CConfigString * str)
-	{
-		release();
-		m_szString = new char[str->length() + 1];
-		memcpy(m_szString, str->c_str(), str->length() + 1);
 		return(*this);
 	}
 
 	bool operator==(const CConfigString &str) const
 	{
-		return (strcasecmp(str.m_szString, m_szString) == 0);
-	}
-
-	bool operator==(const CConfigString * str) const
-	{
-		return (strcasecmp(str->m_szString, m_szString) == 0);
-	}
-
-	CConfigString & operator+=(const char &	sym)
-	{
-		char * newstring = new char[length() + 2];
-		sprintf(newstring, "%s%c", m_szString, sym);
-		mem_delete_a(m_szString);
-		m_szString = newstring;
-		return(*this);
+		return(strcasecmp(str.c_str(), c_str()) == 0);
 	}
 };
 
diff --git a/source/core/JSON.h b/source/core/JSON.h
index 6f72cb87c4856de359c8661a6a542f8ad6602977..0e04ec2ec0c70dae94c7e44f710533160c6883a4 100644
--- a/source/core/JSON.h
+++ b/source/core/JSON.h
@@ -62,7 +62,7 @@ public:
 			return(true);
 		case XJI_STRING:
 			//! FIXME add some checks!
-			*pOut = m_sVal.toDouble();
+			*pOut = m_sVal.toFloat();
 			return(true);
 		
 		case XJI_NULL:
@@ -83,7 +83,7 @@ public:
 		case XJI_STRING:
 			//! FIXME add some checks!
 			//! FIXME fix type!
-			*pOut = m_sVal.toLongInt();
+			*pOut = m_sVal.toInt64();
 			return(true);
 
 		case XJI_NULL:
diff --git a/source/game/GUIInventoryController.cpp b/source/game/GUIInventoryController.cpp
index 354374438694492971ae4bed4216f733e69b8b9d..c06a4fd7bcf5fbaf1b4629a36626f77119140da6 100644
--- a/source/game/GUIInventoryController.cpp
+++ b/source/game/GUIInventoryController.cpp
@@ -38,7 +38,7 @@ CGUIInventoryController::CGUIInventoryController(CCharacterInventory *pInventory
 		{
 			m_aEquipAreas[i].type = (EQUIP_ITEM_TYPE)enumerator.getValue();
 			m_aEquipAreas[i].uIndex = pTypeCounts[enumerator.getValue()]++;
-			m_aEquipAreas[i].pNode->setAttribute(L"equip_index", (unsigned long)m_aEquipAreas[i].uIndex);
+			m_aEquipAreas[i].pNode->setAttribute(L"equip_index", m_aEquipAreas[i].uIndex);
 
 			if(m_aEquipAreas[i].pNode->getAttribute(L"split_container").toBool())
 			{
@@ -52,13 +52,13 @@ CGUIInventoryController::CGUIInventoryController(CCharacterInventory *pInventory
 						if(j == 0 && k == 0)
 						{
 							m_aEquipAreas[i].pCellNode = aCells[k];
-							m_aEquipAreas[i].pCellNode->setAttribute(L"equip_index", (unsigned long)m_aEquipAreas[i].uIndex);
+							m_aEquipAreas[i].pCellNode->setAttribute(L"equip_index", m_aEquipAreas[i].uIndex);
 						}
 						else
 						{
 							newArea.uIndex = pTypeCounts[enumerator.getValue()]++;
 							newArea.pCellNode = aCells[k];
-							newArea.pCellNode->setAttribute(L"equip_index", (unsigned long)newArea.uIndex);
+							newArea.pCellNode->setAttribute(L"equip_index", newArea.uIndex);
 
 							m_aEquipAreas.push_back(newArea);
 						}
diff --git a/source/gui/DOMdocument.cpp b/source/gui/DOMdocument.cpp
index 1f99d6373ffea1fbaa3e417429bbd7e3cf0ce67c..ed90d41302f870db794f988d3700c1793e0e4789 100644
--- a/source/gui/DOMdocument.cpp
+++ b/source/gui/DOMdocument.cpp
@@ -133,11 +133,11 @@ namespace gui
 
 			if(cls.length())
 			{
-				UINT pos = 0;
+				size_t pos = 0;
 				while(true)
 				{
 					pos = cls.find(L" ");
-					if(pos != (UINT)(-1))
+					if(pos != StringW::EOS)
 					{
 						StringW c = cls.substr(0, pos);
 						UINT icls = doc->getIndexForClassString(cls);
@@ -1813,14 +1813,14 @@ namespace gui
 			else if(name == L"class")
 			{
 				StringW cls = value+L" ";
-				UINT pos = 0;
+				size_t pos = 0;
 				Array<UINT> vNewCls;
 				Array<UINT> vAddCls;
 				Array<UINT> vRemoveCls;
 				while(true)
 				{
 					pos = cls.find(L" ");
-					if(pos != ~0)
+					if(pos != StringW::EOS)
 					{
 						if(pos != 0)
 						{
@@ -2045,8 +2045,8 @@ namespace gui
 		BOOL CDOMnode::classExists(const StringW &cls)
 		{
 			const StringW &wsClass = getAttribute(L"class");
-			int pos = wsClass.find(cls);
-			if(pos >= 0)
+			size_t pos = wsClass.find(cls);
+			if(pos != StringW::EOS)
 			{
 				wchar_t wc = wsClass[pos + cls.length()];
 				if(wc == 0 || iswspace(wc))
diff --git a/source/gui/Font.cpp b/source/gui/Font.cpp
index 46a55fc536762948d8c38acf96f6beffffdbcfdd..76a0400a464cfc64f35509abf83c3f61a31917e2 100644
--- a/source/gui/Font.cpp
+++ b/source/gui/Font.cpp
@@ -679,7 +679,7 @@ namespace gui
 
 	void CFont::addChar(WCHAR c, bool full)
 	{
-		if(m_szFontChars.find(c) == (UINT)-1)
+		if(m_szFontChars.find(c) == StringW::EOS)
 		{
 			m_szFontChars += c;
 			if(full)
diff --git a/source/gui/ICSS.cpp b/source/gui/ICSS.cpp
index e064c5411db60ea25a1b13638c08cee778fdd709..4d7c1017bd9c872d9be01c5bdff22560a2d529e0 100644
--- a/source/gui/ICSS.cpp
+++ b/source/gui/ICSS.cpp
@@ -235,8 +235,8 @@ namespace gui
 				}
 				if(pseudoclass & (PSEUDOCLASS_NTH_CHILD | PSEUDOCLASS_NTH_LAST_CHILD | PSEUDOCLASS_NTH_OF_TYPE | PSEUDOCLASS_NTH_LAST_OF_TYPE))
 				{
-					UINT pos = str.find(L"(");
-					if(pos != (UINT)(-1))
+					size_t pos = str.find(L"(");
+					if(pos != StringW::EOS)
 					{
 						UINT d = 0, o = 0;
 						WCHAR cn;
diff --git a/source/gui/IHTMLparser.cpp b/source/gui/IHTMLparser.cpp
index 4ca54eaf9441f48f33a3a2ca0cc179334d81d0a9..164cf3b5bcd7a5bf5dfd89d1e83db6524007c817 100644
--- a/source/gui/IHTMLparser.cpp
+++ b/source/gui/IHTMLparser.cpp
@@ -473,7 +473,7 @@ namespace gui
 											}
 											for(AssotiativeArray<StringW, StringW>::Iterator j = attrs.begin(); j; ++j)
 											{
-												pCur->setAttribute(j.first, j.second);
+												pCur->setAttribute(*j.first, *j.second);
 											}
 											attrs.clear();
 											//								wprintf(L"open tag %s\n", tagname);
diff --git a/source/light/LightSystem.cpp b/source/light/LightSystem.cpp
index 94b5e1e66fad7f1338b866bea041f7937f581cce..a69580b4e92b2f350e46460b3394b5dc19a840b6 100644
--- a/source/light/LightSystem.cpp
+++ b/source/light/LightSystem.cpp
@@ -852,7 +852,7 @@ void CLightSystem::renderGI(CGIGraphNodeData *pNodeData, IXRenderTarget *pFinalT
 
 		pCtx->addTimestamp("lpv_inject -");
 
-		const bool *dev_lpv_points = m_pCore->getConsole()->getPCVarBool("dev_lpv_points");
+		static const bool *dev_lpv_points = m_pCore->getConsole()->getPCVarBool("dev_lpv_points");
 		if(*dev_lpv_points)
 		{
 			auto pTarget = pNodeData->m_pGBufferColor->asRenderTarget();
diff --git a/source/render/ShaderPreprocessor.cpp b/source/render/ShaderPreprocessor.cpp
index 567fae0a834d8dec1e8bff7f678c49070272ff8f..cdfcc149012688ae42f109f01291b015bce9f2e3 100644
--- a/source/render/ShaderPreprocessor.cpp
+++ b/source/render/ShaderPreprocessor.cpp
@@ -545,7 +545,7 @@ String CShaderPreprocessor::process(const char *src, const char *file)
 	String sOut;
 	if(out.size())
 	{
-		sOut.reserve(out.size());
+		sOut.resize(out.size());
 		memcpy((void*)(sOut.c_str()), &(out[0]), out.size() * sizeof(char));
 		((char*)(sOut.c_str()))[out.size()] = 0;
 	}
@@ -1097,7 +1097,7 @@ String CShaderPreprocessor::getInclude(const String &name, const char *szLocalPa
 		{
 			int iSize = (int)pFile->getSize();
 			String s;
-			s.reserve(iSize + 2);
+			s.resize(iSize + 1);
 			pFile->readBin((void*)(s.c_str()), iSize);
 			s[iSize] = '\n';
 			s[iSize + 1] = 0;
@@ -1119,7 +1119,7 @@ String CShaderPreprocessor::getInclude(const String &name, const char *szLocalPa
 			{
 				int iSize = (int)pFile->getSize();
 				String s;
-				s.reserve(iSize + 2);
+				s.resize(iSize + 1);
 				pFile->readBin((void*)(s.c_str()), iSize);
 				s[iSize] = '\n';
 				s[iSize + 1] = 0;
diff --git a/source/xSound/SoundSystem.cpp b/source/xSound/SoundSystem.cpp
index fbd7d88ca98b20507b44714a95f52f1c2897144d..7a79ed7a4448d0801b231a9ec0ba788c13d00695 100644
--- a/source/xSound/SoundSystem.cpp
+++ b/source/xSound/SoundSystem.cpp
@@ -243,9 +243,9 @@ IXAudioCodecTarget* CSoundSystem::getCodecTarget(const char *szName)
 
 	for(MapCodec::Iterator i = m_mapCodecs.begin(); i; ++i)
 	{
-		if(m_mapCodecs[i.first]->open(szPath, "", &pTarget, false))
+		if(m_mapCodecs[*i.first]->open(szPath, "", &pTarget, false))
 		{
-			pCodec = m_mapCodecs[i.first];
+			pCodec = m_mapCodecs[*i.first];
 			break;
 		}
 	}
@@ -411,8 +411,8 @@ IXAudioCodec* CSoundSystem::getCodecSave()
 {
 	for(MapCodec::Iterator i = m_mapCodecs.begin(); i; ++i)
 	{
-		if(m_mapCodecs[i.first]->canSave())
-			return m_mapCodecs[i.first];
+		if(m_mapCodecs[*i.first]->canSave())
+			return m_mapCodecs[*i.first];
 	}
 
 	return NULL;
diff --git a/source/xUI/UIControl.h b/source/xUI/UIControl.h
index 34803a3db394e2cda656209e536171a1cab9f954..fab4481021018a395ef4510d7d216d83fd7b949f 100644
--- a/source/xUI/UIControl.h
+++ b/source/xUI/UIControl.h
@@ -274,7 +274,7 @@ protected:
 	gui::dom::IDOMnode *m_pNode = NULL;
 	gui::dom::IDOMnode *m_pInputNode = NULL;
 	gui::dom::IDOMnode *m_pContainerNode = NULL;
-	const ULONG m_id;
+	const UINT m_id;
 	const String m_sName;
 
 	friend class CUIWindow;