diff --git a/.gitmodules b/.gitmodules
index 87c971dbaa185070bcce18f4503bfe79e3a4c2ba..03fddd0dbeda90a21c6d38c2ac9db701c837f222 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
-[submodule "Tests/quickcheck"]
-	path = Tests/quickcheck
+[submodule "ThirdParty/quickcheck"]
+	path = ThirdParty/quickcheck
 	url = http://software.legiasoft.com/git/quickcheck.git
diff --git a/BaseLib/CMakeLists.txt b/BaseLib/CMakeLists.txt
index d20311172ce30fd47ba0f9a388dd6df0393f1b8a..43321431243769b9b4c0a06352b5b5b5fdc8a0a8 100644
--- a/BaseLib/CMakeLists.txt
+++ b/BaseLib/CMakeLists.txt
@@ -9,16 +9,4 @@ SET_TARGET_PROPERTIES(BaseLib PROPERTIES LINKER_LANGUAGE CXX)
 
 INCLUDE_DIRECTORIES(
 	.
-	zlib
-)
-
-# Add logog subdirectory and group its targets in a Visual Studio folder
-ADD_SUBDIRECTORY(logog)
-IF(BUILD_TESTING)
-	SET_PROPERTY(TARGET Continuous PROPERTY FOLDER "logog")
-ENDIF()
-SET_PROPERTY(TARGET logog PROPERTY FOLDER "logog")
-SET_PROPERTY(TARGET test-logog PROPERTY FOLDER "logog")
-
-# zlib
-ADD_SUBDIRECTORY(zlib)
\ No newline at end of file
+)
\ No newline at end of file
diff --git a/BaseLib/LogogSimpleFormatter.h b/BaseLib/LogogSimpleFormatter.h
index 61b10482e23e444aec1f152381f2c45496fc508c..f42964e0d0489c90f823027bd831643537964785 100644
--- a/BaseLib/LogogSimpleFormatter.h
+++ b/BaseLib/LogogSimpleFormatter.h
@@ -14,7 +14,7 @@
 #define LOGOGSIMPLEFORMATTER_H
 
 // ** INCLUDES **
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 
 namespace BaseLib {
 /**
diff --git a/BaseLib/README.md b/BaseLib/README.md
index c4c54ba177ba4e9e9a31151c7de4ed46ad44c6e0..95cd0a66056bcee34b6b0726ee38389955899026 100644
--- a/BaseLib/README.md
+++ b/BaseLib/README.md
@@ -1,15 +1,3 @@
 # OpenGeoSys 6 #
 
-## Intro Base ##
-
-### Logging with logog ###
-
-For details how to use logog see the [OGS devguide](http://ufz.github.com/devguide/logging/) and the [logog documentation](http://johnwbyrd.github.com/logog/).
-
-[logog](http://johnwbyrd.github.com/logog/) is integrated as a [git-subtree](https://github.com/apenwarr/git-subtree) and can be updated with (executed in the sources root):
-
-	git-subtree pull -P BaseLib/logog --squash https://github.com/johnwbyrd/logog.git
-
-It was initially integrated with:
-
-	git-subtree add -P BaseLib/logog --squash https://github.com/johnwbyrd/logog.git master
+## Intro Base ##
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e7f54da32579b30f00c886bf83321e746c414a27..31767af1e6abb600fff1e615a83010cbba2a3f66 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -87,6 +87,10 @@ ENDIF() #OGS_PACKAGING
 ######################
 
 # Add subdirectories with the projects
+ADD_SUBDIRECTORY( ThirdParty )
+INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/ThirdParty )
+INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/ThirdParty/quickcheck )
+
 ADD_SUBDIRECTORY( BaseLib )
 ADD_SUBDIRECTORY( FemLib )
 ADD_SUBDIRECTORY( FileIO )
diff --git a/FileIO/MeshIO/TetGenInterface.cpp b/FileIO/MeshIO/TetGenInterface.cpp
index d3104df588ee1e1c0b65e929016d60b02f32921b..7544ca30212e928effea4120b37a94c863e475f2 100644
--- a/FileIO/MeshIO/TetGenInterface.cpp
+++ b/FileIO/MeshIO/TetGenInterface.cpp
@@ -15,8 +15,8 @@
 // BaseLib
 #include "StringTools.h"
 
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 
 // FileIO
 #include "TetGenInterface.h"
diff --git a/Gui/main.cpp b/Gui/main.cpp
index c810a3755a175242fcd3b21b4c659f4f4fb49124..9f95e98abd3516094c7d1a0ebf35da4b494a092b 100644
--- a/Gui/main.cpp
+++ b/Gui/main.cpp
@@ -4,7 +4,7 @@
 #ifdef OGS_USE_OPENSG
 #include <OpenSG/OSGBaseFunctions.h>
 #endif
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 #include "LogogSimpleFormatter.h"
 
 int main(int argc, char* argv[])
diff --git a/MeshLib/CMakeLists.txt b/MeshLib/CMakeLists.txt
index 51087b6a8c68ab5ddbd7f07ebf06ff089938f8d0..442b06c0f5da8709eff1475fd020bb84aec5704a 100644
--- a/MeshLib/CMakeLists.txt
+++ b/MeshLib/CMakeLists.txt
@@ -12,7 +12,6 @@ include_directories(
 	../BaseLib
 	../GeoLib
 	../MathLib
-	${CMAKE_SOURCE_DIR}/BaseLib/logog/include
 )
 
 
diff --git a/MeshLib/Mesh.cpp b/MeshLib/Mesh.cpp
index e3c279dc65f226d4156fb689b35dec2f8c71ca7c..c955c1a12901172a6c999d64bf8ec7740ebb67cc 100644
--- a/MeshLib/Mesh.cpp
+++ b/MeshLib/Mesh.cpp
@@ -20,7 +20,7 @@
 #include "Elements/Pyramid.h"
 #include "Elements/Prism.h"
 
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 
 #include "RunTime.h"
 #include "uniqueInsert.h"
diff --git a/MeshLib/Mesh2MeshPropertyInterpolation.cpp b/MeshLib/Mesh2MeshPropertyInterpolation.cpp
index 2a49765cb8f5cb709b11e5577193ad021c56e635..bca9aacddd6159a36869200390aa19d2cb6c6122 100644
--- a/MeshLib/Mesh2MeshPropertyInterpolation.cpp
+++ b/MeshLib/Mesh2MeshPropertyInterpolation.cpp
@@ -15,7 +15,7 @@
 #include "Mesh2MeshPropertyInterpolation.h"
 
 // BaseLib
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 
 // GeoLib
 #include "AABB.h"
diff --git a/MeshLib/MeshCoarsener.cpp b/MeshLib/MeshCoarsener.cpp
index b3c899bbf6c3a1627993e634110137ff0aad8859..4e4fa73a766086c4678d4853dd0ac54bfbfa55d8 100644
--- a/MeshLib/MeshCoarsener.cpp
+++ b/MeshLib/MeshCoarsener.cpp
@@ -9,8 +9,8 @@
  *  Created on  Aug 3, 2012 by Thomas Fischer
  */
 
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 
 #include "MeshCoarsener.h"
 
diff --git a/MeshLib/MeshQuality/MeshQualityChecker.h b/MeshLib/MeshQuality/MeshQualityChecker.h
index e4cbcaa27ec9e66d1f05094585f61784891ab99e..5d2a6af15ef8a6cf95018214995e384bd7b88652 100644
--- a/MeshLib/MeshQuality/MeshQualityChecker.h
+++ b/MeshLib/MeshQuality/MeshQualityChecker.h
@@ -21,7 +21,7 @@
 #include "Mesh.h"
 #include "Elements/Element.h"
 
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 
 namespace MeshLib
 {
diff --git a/MeshLib/MshEditor.cpp b/MeshLib/MshEditor.cpp
index 6cb86af7ebfcba3c3f45db230b494242e4464871..516f8c67373eb931ee6b390e2451f004cb9e985a 100644
--- a/MeshLib/MshEditor.cpp
+++ b/MeshLib/MshEditor.cpp
@@ -21,7 +21,7 @@
 
 #include "MathTools.h"
 
-#include "logog.hpp"
+#include "logog/include/logog.hpp"
 
 namespace MeshLib {
 
diff --git a/SimpleTests/MatrixTests/CMakeLists.txt b/SimpleTests/MatrixTests/CMakeLists.txt
index dcd0dc514820d39aac9da43e28417309a259f5b1..0ad4e91cc202055021077e948ce8fcca6889b5af 100644
--- a/SimpleTests/MatrixTests/CMakeLists.txt
+++ b/SimpleTests/MatrixTests/CMakeLists.txt
@@ -11,7 +11,6 @@ INCLUDE_DIRECTORIES(
         .
 	${CMAKE_SOURCE_DIR}/BaseLib/
 	${CMAKE_BINARY_DIR}/BaseLib/
-	${CMAKE_SOURCE_DIR}/BaseLib/logog/include
 	${CMAKE_SOURCE_DIR}/MathLib/
 )
 
diff --git a/SimpleTests/MatrixTests/MatMult.cpp b/SimpleTests/MatrixTests/MatMult.cpp
index 698d23911a0e0ef32e4d5eccc1b3adba716323c7..6b5e771e60afe083d872c12fbd7df9983e529288 100644
--- a/SimpleTests/MatrixTests/MatMult.cpp
+++ b/SimpleTests/MatrixTests/MatMult.cpp
@@ -22,9 +22,9 @@
 // BaseLib
 #include "RunTime.h"
 #include "CPUTime.h"
-// BaseLib/logog
-#include "logog.hpp"
-#include "formatter.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
+#include "logog/include/formatter.hpp"
 // BaseLib/tclap
 #include "tclap/CmdLine.h"
 
diff --git a/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp b/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp
index d79201a49a88446d19c9d6af9420d58c2e55ebc5..af8c42ee248851d2bd3c600ad763ef62bb00d928 100644
--- a/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp
+++ b/SimpleTests/MatrixTests/MatVecMultNDPerm.cpp
@@ -24,9 +24,9 @@
 #include "CPUTime.h"
 // BaseLib/tclap
 #include "tclap/CmdLine.h"
-// BaseLib/logog
-#include "logog.hpp"
-#include "formatter.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
+#include "logog/include/formatter.hpp"
 
 // MathLib
 #include "sparse.h"
diff --git a/SimpleTests/MatrixTests/MatVecMultNDPermOpenMP.cpp b/SimpleTests/MatrixTests/MatVecMultNDPermOpenMP.cpp
index 6bf7fc4167eada85217e1444a8adadf530fc509f..49ee37ceff31109a12a20b3f117cec7921a670f3 100644
--- a/SimpleTests/MatrixTests/MatVecMultNDPermOpenMP.cpp
+++ b/SimpleTests/MatrixTests/MatVecMultNDPermOpenMP.cpp
@@ -16,9 +16,9 @@
 #include "CPUTime.h"
 // BaseLib/tclap
 #include "tclap/CmdLine.h"
-// BaseLib/logog
-#include "logog.hpp"
-#include "formatter.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
+#include "logog/include/formatter.hpp"
 
 // MathLib
 #include "sparse.h"
diff --git a/SimpleTests/MatrixTests/MatVecMultPthreads.cpp b/SimpleTests/MatrixTests/MatVecMultPthreads.cpp
index 6c7a09a11e4383551e64b0101f6e5124599d075e..591d7dcd8bc578ae0c25398b5b3f3b4d11b8b842 100644
--- a/SimpleTests/MatrixTests/MatVecMultPthreads.cpp
+++ b/SimpleTests/MatrixTests/MatVecMultPthreads.cpp
@@ -22,9 +22,9 @@
 // BaseLib
 #include "RunTime.h"
 #include "CPUTime.h"
-// BaseLib/logog
-#include "logog.hpp"
-#include "formatter.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
+#include "logog/include/formatter.hpp"
 // BaseLib/tclap
 #include "tclap/CmdLine.h"
 
diff --git a/SimpleTests/MeshTests/CMakeLists.txt b/SimpleTests/MeshTests/CMakeLists.txt
index f266d6e6e49289862b71f3542d86c4869f35af98..8202a95cec6ca585265118b42f65044e72319204 100644
--- a/SimpleTests/MeshTests/CMakeLists.txt
+++ b/SimpleTests/MeshTests/CMakeLists.txt
@@ -3,9 +3,8 @@ IF (WIN32)
 ENDIF()
 
 INCLUDE_DIRECTORIES(
-        .
+	.
 	${CMAKE_SOURCE_DIR}/BaseLib/
-	${CMAKE_SOURCE_DIR}/BaseLib/logog/include
 	${CMAKE_SOURCE_DIR}/FileIO/
 	${CMAKE_SOURCE_DIR}/GeoLib/
 	${CMAKE_SOURCE_DIR}/MathLib/
diff --git a/SimpleTests/MeshTests/CollapseMeshNodes.cpp b/SimpleTests/MeshTests/CollapseMeshNodes.cpp
index 8145e97dde8f0be64c1e49f5a188bf4d134eace1..3e0a16396955c9eefe5b60d886d03eca197b021d 100644
--- a/SimpleTests/MeshTests/CollapseMeshNodes.cpp
+++ b/SimpleTests/MeshTests/CollapseMeshNodes.cpp
@@ -15,8 +15,8 @@
 #include "tclap/CmdLine.h"
 #include "LogogSimpleFormatter.h"
 
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 
 // MeshLib
 #include "Node.h"
diff --git a/SimpleTests/MeshTests/MeshRead.cpp b/SimpleTests/MeshTests/MeshRead.cpp
index 9576e9dc5ebd8c6d6113d27ed57ec2cf9b710f03..d7b2290d61d6b360cdc1423022255aa431bb7e1b 100644
--- a/SimpleTests/MeshTests/MeshRead.cpp
+++ b/SimpleTests/MeshTests/MeshRead.cpp
@@ -12,8 +12,8 @@
 #include "tclap/CmdLine.h"
 #include "LogogSimpleFormatter.h"
 
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 
 // FileIO
 #include "readMeshFromFile.h"
diff --git a/SimpleTests/MeshTests/MeshSearchTest.cpp b/SimpleTests/MeshTests/MeshSearchTest.cpp
index c70c22f042c95fdab8d874569540445c9edc1c02..262eb43b164fd12b7aa5716eeb55cedb1c624db8 100644
--- a/SimpleTests/MeshTests/MeshSearchTest.cpp
+++ b/SimpleTests/MeshTests/MeshSearchTest.cpp
@@ -15,8 +15,8 @@
 #include "tclap/CmdLine.h"
 #include "LogogSimpleFormatter.h"
 
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 
 // GeoLib
 #include "Grid.h"
diff --git a/Tests/BaseLib/TestFilePathStringManipulation.cpp b/Tests/BaseLib/TestFilePathStringManipulation.cpp
index 51f828a2f82c00ddadc04a3f82553ee692199152..914d5e180f1b9c9cd02871a4e07c67f4bbdf29d6 100644
--- a/Tests/BaseLib/TestFilePathStringManipulation.cpp
+++ b/Tests/BaseLib/TestFilePathStringManipulation.cpp
@@ -5,7 +5,7 @@
  *              http://www.opengeosys.org/project/license
  */
 
-#include "gtest.h"
+#include "gtest/gtest.h"
 
 #include "FileTools.h"
 #include "FileTools.cpp"
diff --git a/Tests/BaseLib/TestQuicksort.cpp b/Tests/BaseLib/TestQuicksort.cpp
index 68660ed0e2f55ae7a3efa5f03d782662793fbc44..a30ca43099a55a94fde2f95d04324c96e64a5139 100644
--- a/Tests/BaseLib/TestQuicksort.cpp
+++ b/Tests/BaseLib/TestQuicksort.cpp
@@ -12,7 +12,7 @@
  *
  */
 
-#include "gtest.h"
+#include "gtest/gtest.h"
 #include "quickcheck/quickcheck.hh"
 #include "quicksort.h"
 
diff --git a/Tests/BaseLib/TestSwap.cpp b/Tests/BaseLib/TestSwap.cpp
index 2265a30a11f556eaaec0ee53356dcee6362500e5..faf1b6643b5ad1e7899d6826fe861f7fbb2780dc 100644
--- a/Tests/BaseLib/TestSwap.cpp
+++ b/Tests/BaseLib/TestSwap.cpp
@@ -10,7 +10,7 @@
  */
 
 // ** INCLUDES **
-#include "gtest.h"
+#include "gtest/gtest.h"
 
 TEST(BaseLib, SwapInt) {
 	int arg0 = 5;
diff --git a/Tests/BaseLib/TestSystemTools.cpp b/Tests/BaseLib/TestSystemTools.cpp
index 16666ee91dbece3e7101d11d61314c8200c060b1..b4e7d7ace5f881228df9eec791a324e07fbca1cb 100644
--- a/Tests/BaseLib/TestSystemTools.cpp
+++ b/Tests/BaseLib/TestSystemTools.cpp
@@ -10,7 +10,7 @@
  */
 
 // ** INCLUDES **
-#include "gtest.h"
+#include "gtest/gtest.h"
 
 #include "SystemTools.h"
 
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 5bd64c87f07d5e6cb89d6b5fb3a225fd8470a0a3..69f73c75decf7cc4fc2b9fb63c03d77db50fdf67 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -4,15 +4,12 @@ IF( MSVC )
 	ADD_DEFINITIONS( /D_VARIADIC_MAX=10 )
 ENDIF()
 
-ADD_SUBDIRECTORY( gtest )
-
 APPEND_SOURCE_FILES(TEST_SOURCES)
 APPEND_SOURCE_FILES(TEST_SOURCES BaseLib)
 APPEND_SOURCE_FILES(TEST_SOURCES GeoLib)
 
 INCLUDE_DIRECTORIES(
 	${CMAKE_SOURCE_DIR}/Tests/gtest
-	${CMAKE_SOURCE_DIR}/Tests/quickcheck
 	${CMAKE_SOURCE_DIR}/BaseLib
 	${CMAKE_SOURCE_DIR}/GeoLib
 )
diff --git a/Tests/GeoLib/TestAABB.cpp b/Tests/GeoLib/TestAABB.cpp
index 9e2291e28c9c08fc541ef2177f1de2017f856836..dbae3c570fed931a78b9ae36acbcefc11ef2217d 100644
--- a/Tests/GeoLib/TestAABB.cpp
+++ b/Tests/GeoLib/TestAABB.cpp
@@ -10,7 +10,7 @@
  */
 
 // ** INCLUDES **
-#include "gtest.h"
+#include "gtest/gtest.h"
 
 // std lib
 #include <cstdlib>
diff --git a/Tests/testrunner.cpp b/Tests/testrunner.cpp
index 4c1b591c278c468c1f375208136e6c39fff747c3..3d3cf4f5fb858fff5ce1c51c12e98516eeb6126b 100644
--- a/Tests/testrunner.cpp
+++ b/Tests/testrunner.cpp
@@ -11,7 +11,7 @@
  */
 
 // ** INCLUDES **
-#include "gtest.h"
+#include "gtest/gtest.h"
 
 /// Implementation of the googletest testrunner
 int main(int argc, char* argv[])
diff --git a/ThirdParty/CMakeLists.txt b/ThirdParty/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..25d27330e5168e06a17405e8b5e2b5f02f69ee37
--- /dev/null
+++ b/ThirdParty/CMakeLists.txt
@@ -0,0 +1,11 @@
+# Add logog subdirectory and group its targets in a Visual Studio folder
+ADD_SUBDIRECTORY(logog)
+IF(BUILD_TESTING)
+	SET_PROPERTY(TARGET Continuous PROPERTY FOLDER "logog")
+ENDIF()
+SET_PROPERTY(TARGET logog PROPERTY FOLDER "logog")
+SET_PROPERTY(TARGET test-logog PROPERTY FOLDER "logog")
+
+ADD_SUBDIRECTORY(zlib)
+
+ADD_SUBDIRECTORY(gtest)
diff --git a/BaseLib/RapidXML/license.txt b/ThirdParty/RapidXML/license.txt
similarity index 100%
rename from BaseLib/RapidXML/license.txt
rename to ThirdParty/RapidXML/license.txt
diff --git a/BaseLib/RapidXML/manual.html b/ThirdParty/RapidXML/manual.html
similarity index 100%
rename from BaseLib/RapidXML/manual.html
rename to ThirdParty/RapidXML/manual.html
diff --git a/BaseLib/RapidXML/rapidxml.hpp b/ThirdParty/RapidXML/rapidxml.hpp
similarity index 100%
rename from BaseLib/RapidXML/rapidxml.hpp
rename to ThirdParty/RapidXML/rapidxml.hpp
diff --git a/BaseLib/RapidXML/rapidxml_iterators.hpp b/ThirdParty/RapidXML/rapidxml_iterators.hpp
similarity index 100%
rename from BaseLib/RapidXML/rapidxml_iterators.hpp
rename to ThirdParty/RapidXML/rapidxml_iterators.hpp
diff --git a/BaseLib/RapidXML/rapidxml_print.hpp b/ThirdParty/RapidXML/rapidxml_print.hpp
similarity index 100%
rename from BaseLib/RapidXML/rapidxml_print.hpp
rename to ThirdParty/RapidXML/rapidxml_print.hpp
diff --git a/BaseLib/RapidXML/rapidxml_utils.hpp b/ThirdParty/RapidXML/rapidxml_utils.hpp
similarity index 100%
rename from BaseLib/RapidXML/rapidxml_utils.hpp
rename to ThirdParty/RapidXML/rapidxml_utils.hpp
diff --git a/BaseLib/RapidXML/readme.txt b/ThirdParty/RapidXML/readme.txt
similarity index 100%
rename from BaseLib/RapidXML/readme.txt
rename to ThirdParty/RapidXML/readme.txt
diff --git a/ThirdParty/ReadMe.md b/ThirdParty/ReadMe.md
new file mode 100644
index 0000000000000000000000000000000000000000..97eee7d1e820aeec3bb5b5a88f6df6ef3ab651fe
--- /dev/null
+++ b/ThirdParty/ReadMe.md
@@ -0,0 +1,33 @@
+# Third-party libraries #
+
+## logog ##
+
+For details how to use logog see the [OGS devguide](http://devguide.opengeosys.com/logging/) and the [logog documentation](http://johnwbyrd.github.com/logog/).
+
+[logog](http://johnwbyrd.github.com/logog/) is integrated as a [git-subtree](https://github.com/apenwarr/git-subtree) and can be updated with (executed in the sources root):
+
+    git-subtree pull -P ThirdParty/logog --squash https://github.com/johnwbyrd/logog.git
+
+It was initially integrated with:
+
+    git-subtree add -P ThirdParty/logog --squash https://github.com/johnwbyrd/logog.git master
+
+## RapidXML ##
+
+Is used for XML-IO. Is integrated directly.
+
+## tclap ##
+
+Command line option parser. Is integrated directly.
+
+## zlib ##
+
+Compression algorithms. Is integrated directly.
+
+## gtest ##
+
+Google testing framework for unit tests. Is integrated directly.
+
+## quickcheck ##
+
+Is integrated as a submodule.
\ No newline at end of file
diff --git a/Tests/gtest/CMakeLists.txt b/ThirdParty/gtest/CMakeLists.txt
similarity index 100%
rename from Tests/gtest/CMakeLists.txt
rename to ThirdParty/gtest/CMakeLists.txt
diff --git a/Tests/gtest/gtest-all.cc b/ThirdParty/gtest/gtest-all.cc
similarity index 100%
rename from Tests/gtest/gtest-all.cc
rename to ThirdParty/gtest/gtest-all.cc
diff --git a/Tests/gtest/gtest.h b/ThirdParty/gtest/gtest.h
similarity index 100%
rename from Tests/gtest/gtest.h
rename to ThirdParty/gtest/gtest.h
diff --git a/BaseLib/logog/CMakeLists.txt b/ThirdParty/logog/CMakeLists.txt
similarity index 100%
rename from BaseLib/logog/CMakeLists.txt
rename to ThirdParty/logog/CMakeLists.txt
diff --git a/BaseLib/logog/doc/make-doxygen.bat b/ThirdParty/logog/doc/make-doxygen.bat
similarity index 100%
rename from BaseLib/logog/doc/make-doxygen.bat
rename to ThirdParty/logog/doc/make-doxygen.bat
diff --git a/BaseLib/logog/doc/overview.dox b/ThirdParty/logog/doc/overview.dox
similarity index 100%
rename from BaseLib/logog/doc/overview.dox
rename to ThirdParty/logog/doc/overview.dox
diff --git a/BaseLib/logog/doxyfile b/ThirdParty/logog/doxyfile
similarity index 100%
rename from BaseLib/logog/doxyfile
rename to ThirdParty/logog/doxyfile
diff --git a/BaseLib/logog/include/api.hpp b/ThirdParty/logog/include/api.hpp
similarity index 100%
rename from BaseLib/logog/include/api.hpp
rename to ThirdParty/logog/include/api.hpp
diff --git a/BaseLib/logog/include/checkpoint.hpp b/ThirdParty/logog/include/checkpoint.hpp
similarity index 100%
rename from BaseLib/logog/include/checkpoint.hpp
rename to ThirdParty/logog/include/checkpoint.hpp
diff --git a/BaseLib/logog/include/const.hpp b/ThirdParty/logog/include/const.hpp
similarity index 100%
rename from BaseLib/logog/include/const.hpp
rename to ThirdParty/logog/include/const.hpp
diff --git a/BaseLib/logog/include/formatter.hpp b/ThirdParty/logog/include/formatter.hpp
similarity index 100%
rename from BaseLib/logog/include/formatter.hpp
rename to ThirdParty/logog/include/formatter.hpp
diff --git a/BaseLib/logog/include/logog.hpp b/ThirdParty/logog/include/logog.hpp
similarity index 100%
rename from BaseLib/logog/include/logog.hpp
rename to ThirdParty/logog/include/logog.hpp
diff --git a/BaseLib/logog/include/macro.hpp b/ThirdParty/logog/include/macro.hpp
similarity index 100%
rename from BaseLib/logog/include/macro.hpp
rename to ThirdParty/logog/include/macro.hpp
diff --git a/BaseLib/logog/include/message.hpp b/ThirdParty/logog/include/message.hpp
similarity index 100%
rename from BaseLib/logog/include/message.hpp
rename to ThirdParty/logog/include/message.hpp
diff --git a/BaseLib/logog/include/mutex.hpp b/ThirdParty/logog/include/mutex.hpp
similarity index 100%
rename from BaseLib/logog/include/mutex.hpp
rename to ThirdParty/logog/include/mutex.hpp
diff --git a/BaseLib/logog/include/node.hpp b/ThirdParty/logog/include/node.hpp
similarity index 100%
rename from BaseLib/logog/include/node.hpp
rename to ThirdParty/logog/include/node.hpp
diff --git a/BaseLib/logog/include/object.hpp b/ThirdParty/logog/include/object.hpp
similarity index 100%
rename from BaseLib/logog/include/object.hpp
rename to ThirdParty/logog/include/object.hpp
diff --git a/BaseLib/logog/include/platform.hpp b/ThirdParty/logog/include/platform.hpp
similarity index 100%
rename from BaseLib/logog/include/platform.hpp
rename to ThirdParty/logog/include/platform.hpp
diff --git a/BaseLib/logog/include/socket.hpp b/ThirdParty/logog/include/socket.hpp
similarity index 100%
rename from BaseLib/logog/include/socket.hpp
rename to ThirdParty/logog/include/socket.hpp
diff --git a/BaseLib/logog/include/statics.hpp b/ThirdParty/logog/include/statics.hpp
similarity index 100%
rename from BaseLib/logog/include/statics.hpp
rename to ThirdParty/logog/include/statics.hpp
diff --git a/BaseLib/logog/include/string.hpp b/ThirdParty/logog/include/string.hpp
similarity index 100%
rename from BaseLib/logog/include/string.hpp
rename to ThirdParty/logog/include/string.hpp
diff --git a/BaseLib/logog/include/target.hpp b/ThirdParty/logog/include/target.hpp
similarity index 100%
rename from BaseLib/logog/include/target.hpp
rename to ThirdParty/logog/include/target.hpp
diff --git a/BaseLib/logog/include/thread.hpp b/ThirdParty/logog/include/thread.hpp
similarity index 100%
rename from BaseLib/logog/include/thread.hpp
rename to ThirdParty/logog/include/thread.hpp
diff --git a/BaseLib/logog/include/timer.hpp b/ThirdParty/logog/include/timer.hpp
similarity index 100%
rename from BaseLib/logog/include/timer.hpp
rename to ThirdParty/logog/include/timer.hpp
diff --git a/BaseLib/logog/include/topic.hpp b/ThirdParty/logog/include/topic.hpp
similarity index 100%
rename from BaseLib/logog/include/topic.hpp
rename to ThirdParty/logog/include/topic.hpp
diff --git a/BaseLib/logog/include/unittest.hpp b/ThirdParty/logog/include/unittest.hpp
similarity index 100%
rename from BaseLib/logog/include/unittest.hpp
rename to ThirdParty/logog/include/unittest.hpp
diff --git a/BaseLib/logog/readme.txt b/ThirdParty/logog/readme.txt
similarity index 100%
rename from BaseLib/logog/readme.txt
rename to ThirdParty/logog/readme.txt
diff --git a/BaseLib/logog/src/api.cpp b/ThirdParty/logog/src/api.cpp
similarity index 100%
rename from BaseLib/logog/src/api.cpp
rename to ThirdParty/logog/src/api.cpp
diff --git a/BaseLib/logog/src/checkpoint.cpp b/ThirdParty/logog/src/checkpoint.cpp
similarity index 100%
rename from BaseLib/logog/src/checkpoint.cpp
rename to ThirdParty/logog/src/checkpoint.cpp
diff --git a/BaseLib/logog/src/formatter.cpp b/ThirdParty/logog/src/formatter.cpp
similarity index 100%
rename from BaseLib/logog/src/formatter.cpp
rename to ThirdParty/logog/src/formatter.cpp
diff --git a/BaseLib/logog/src/lobject.cpp b/ThirdParty/logog/src/lobject.cpp
similarity index 100%
rename from BaseLib/logog/src/lobject.cpp
rename to ThirdParty/logog/src/lobject.cpp
diff --git a/BaseLib/logog/src/logog.vcproj b/ThirdParty/logog/src/logog.vcproj
similarity index 100%
rename from BaseLib/logog/src/logog.vcproj
rename to ThirdParty/logog/src/logog.vcproj
diff --git a/BaseLib/logog/src/lstring.cpp b/ThirdParty/logog/src/lstring.cpp
similarity index 100%
rename from BaseLib/logog/src/lstring.cpp
rename to ThirdParty/logog/src/lstring.cpp
diff --git a/BaseLib/logog/src/message.cpp b/ThirdParty/logog/src/message.cpp
similarity index 100%
rename from BaseLib/logog/src/message.cpp
rename to ThirdParty/logog/src/message.cpp
diff --git a/BaseLib/logog/src/mutex.cpp b/ThirdParty/logog/src/mutex.cpp
similarity index 100%
rename from BaseLib/logog/src/mutex.cpp
rename to ThirdParty/logog/src/mutex.cpp
diff --git a/BaseLib/logog/src/node.cpp b/ThirdParty/logog/src/node.cpp
similarity index 100%
rename from BaseLib/logog/src/node.cpp
rename to ThirdParty/logog/src/node.cpp
diff --git a/BaseLib/logog/src/platform.cpp b/ThirdParty/logog/src/platform.cpp
similarity index 100%
rename from BaseLib/logog/src/platform.cpp
rename to ThirdParty/logog/src/platform.cpp
diff --git a/BaseLib/logog/src/socket.cpp b/ThirdParty/logog/src/socket.cpp
similarity index 100%
rename from BaseLib/logog/src/socket.cpp
rename to ThirdParty/logog/src/socket.cpp
diff --git a/BaseLib/logog/src/statics.cpp b/ThirdParty/logog/src/statics.cpp
similarity index 100%
rename from BaseLib/logog/src/statics.cpp
rename to ThirdParty/logog/src/statics.cpp
diff --git a/BaseLib/logog/src/target.cpp b/ThirdParty/logog/src/target.cpp
similarity index 100%
rename from BaseLib/logog/src/target.cpp
rename to ThirdParty/logog/src/target.cpp
diff --git a/BaseLib/logog/src/timer.cpp b/ThirdParty/logog/src/timer.cpp
similarity index 100%
rename from BaseLib/logog/src/timer.cpp
rename to ThirdParty/logog/src/timer.cpp
diff --git a/BaseLib/logog/src/topic.cpp b/ThirdParty/logog/src/topic.cpp
similarity index 100%
rename from BaseLib/logog/src/topic.cpp
rename to ThirdParty/logog/src/topic.cpp
diff --git a/BaseLib/logog/src/unittest.cpp b/ThirdParty/logog/src/unittest.cpp
similarity index 100%
rename from BaseLib/logog/src/unittest.cpp
rename to ThirdParty/logog/src/unittest.cpp
diff --git a/BaseLib/logog/test/CMakeLists.txt b/ThirdParty/logog/test/CMakeLists.txt
similarity index 100%
rename from BaseLib/logog/test/CMakeLists.txt
rename to ThirdParty/logog/test/CMakeLists.txt
diff --git a/BaseLib/logog/test/test.cpp b/ThirdParty/logog/test/test.cpp
similarity index 100%
rename from BaseLib/logog/test/test.cpp
rename to ThirdParty/logog/test/test.cpp
diff --git a/BaseLib/logog/test/test.sln b/ThirdParty/logog/test/test.sln
similarity index 100%
rename from BaseLib/logog/test/test.sln
rename to ThirdParty/logog/test/test.sln
diff --git a/BaseLib/logog/test/test.vcproj b/ThirdParty/logog/test/test.vcproj
similarity index 100%
rename from BaseLib/logog/test/test.vcproj
rename to ThirdParty/logog/test/test.vcproj
diff --git a/BaseLib/logog/test/test.vcproj.lnt b/ThirdParty/logog/test/test.vcproj.lnt
similarity index 100%
rename from BaseLib/logog/test/test.vcproj.lnt
rename to ThirdParty/logog/test/test.vcproj.lnt
diff --git a/Tests/quickcheck b/ThirdParty/quickcheck
similarity index 100%
rename from Tests/quickcheck
rename to ThirdParty/quickcheck
diff --git a/BaseLib/tclap/Arg.h b/ThirdParty/tclap/Arg.h
similarity index 100%
rename from BaseLib/tclap/Arg.h
rename to ThirdParty/tclap/Arg.h
diff --git a/BaseLib/tclap/ArgException.h b/ThirdParty/tclap/ArgException.h
similarity index 100%
rename from BaseLib/tclap/ArgException.h
rename to ThirdParty/tclap/ArgException.h
diff --git a/BaseLib/tclap/ArgTraits.h b/ThirdParty/tclap/ArgTraits.h
similarity index 100%
rename from BaseLib/tclap/ArgTraits.h
rename to ThirdParty/tclap/ArgTraits.h
diff --git a/BaseLib/tclap/CmdLine.h b/ThirdParty/tclap/CmdLine.h
similarity index 100%
rename from BaseLib/tclap/CmdLine.h
rename to ThirdParty/tclap/CmdLine.h
diff --git a/BaseLib/tclap/CmdLineInterface.h b/ThirdParty/tclap/CmdLineInterface.h
similarity index 100%
rename from BaseLib/tclap/CmdLineInterface.h
rename to ThirdParty/tclap/CmdLineInterface.h
diff --git a/BaseLib/tclap/CmdLineOutput.h b/ThirdParty/tclap/CmdLineOutput.h
similarity index 100%
rename from BaseLib/tclap/CmdLineOutput.h
rename to ThirdParty/tclap/CmdLineOutput.h
diff --git a/BaseLib/tclap/Constraint.h b/ThirdParty/tclap/Constraint.h
similarity index 100%
rename from BaseLib/tclap/Constraint.h
rename to ThirdParty/tclap/Constraint.h
diff --git a/BaseLib/tclap/DocBookOutput.h b/ThirdParty/tclap/DocBookOutput.h
similarity index 100%
rename from BaseLib/tclap/DocBookOutput.h
rename to ThirdParty/tclap/DocBookOutput.h
diff --git a/BaseLib/tclap/HelpVisitor.h b/ThirdParty/tclap/HelpVisitor.h
similarity index 100%
rename from BaseLib/tclap/HelpVisitor.h
rename to ThirdParty/tclap/HelpVisitor.h
diff --git a/BaseLib/tclap/IgnoreRestVisitor.h b/ThirdParty/tclap/IgnoreRestVisitor.h
similarity index 100%
rename from BaseLib/tclap/IgnoreRestVisitor.h
rename to ThirdParty/tclap/IgnoreRestVisitor.h
diff --git a/BaseLib/tclap/MultiArg.h b/ThirdParty/tclap/MultiArg.h
similarity index 100%
rename from BaseLib/tclap/MultiArg.h
rename to ThirdParty/tclap/MultiArg.h
diff --git a/BaseLib/tclap/MultiSwitchArg.h b/ThirdParty/tclap/MultiSwitchArg.h
similarity index 100%
rename from BaseLib/tclap/MultiSwitchArg.h
rename to ThirdParty/tclap/MultiSwitchArg.h
diff --git a/BaseLib/tclap/OptionalUnlabeledTracker.h b/ThirdParty/tclap/OptionalUnlabeledTracker.h
similarity index 100%
rename from BaseLib/tclap/OptionalUnlabeledTracker.h
rename to ThirdParty/tclap/OptionalUnlabeledTracker.h
diff --git a/BaseLib/tclap/README b/ThirdParty/tclap/README
similarity index 100%
rename from BaseLib/tclap/README
rename to ThirdParty/tclap/README
diff --git a/BaseLib/tclap/StandardTraits.h b/ThirdParty/tclap/StandardTraits.h
similarity index 100%
rename from BaseLib/tclap/StandardTraits.h
rename to ThirdParty/tclap/StandardTraits.h
diff --git a/BaseLib/tclap/StdOutput.h b/ThirdParty/tclap/StdOutput.h
similarity index 100%
rename from BaseLib/tclap/StdOutput.h
rename to ThirdParty/tclap/StdOutput.h
diff --git a/BaseLib/tclap/SwitchArg.h b/ThirdParty/tclap/SwitchArg.h
similarity index 100%
rename from BaseLib/tclap/SwitchArg.h
rename to ThirdParty/tclap/SwitchArg.h
diff --git a/BaseLib/tclap/UnlabeledMultiArg.h b/ThirdParty/tclap/UnlabeledMultiArg.h
similarity index 100%
rename from BaseLib/tclap/UnlabeledMultiArg.h
rename to ThirdParty/tclap/UnlabeledMultiArg.h
diff --git a/BaseLib/tclap/UnlabeledValueArg.h b/ThirdParty/tclap/UnlabeledValueArg.h
similarity index 100%
rename from BaseLib/tclap/UnlabeledValueArg.h
rename to ThirdParty/tclap/UnlabeledValueArg.h
diff --git a/BaseLib/tclap/ValueArg.h b/ThirdParty/tclap/ValueArg.h
similarity index 100%
rename from BaseLib/tclap/ValueArg.h
rename to ThirdParty/tclap/ValueArg.h
diff --git a/BaseLib/tclap/ValuesConstraint.h b/ThirdParty/tclap/ValuesConstraint.h
similarity index 100%
rename from BaseLib/tclap/ValuesConstraint.h
rename to ThirdParty/tclap/ValuesConstraint.h
diff --git a/BaseLib/tclap/VersionVisitor.h b/ThirdParty/tclap/VersionVisitor.h
similarity index 100%
rename from BaseLib/tclap/VersionVisitor.h
rename to ThirdParty/tclap/VersionVisitor.h
diff --git a/BaseLib/tclap/Visitor.h b/ThirdParty/tclap/Visitor.h
similarity index 100%
rename from BaseLib/tclap/Visitor.h
rename to ThirdParty/tclap/Visitor.h
diff --git a/BaseLib/tclap/XorHandler.h b/ThirdParty/tclap/XorHandler.h
similarity index 100%
rename from BaseLib/tclap/XorHandler.h
rename to ThirdParty/tclap/XorHandler.h
diff --git a/BaseLib/tclap/ZshCompletionOutput.h b/ThirdParty/tclap/ZshCompletionOutput.h
similarity index 100%
rename from BaseLib/tclap/ZshCompletionOutput.h
rename to ThirdParty/tclap/ZshCompletionOutput.h
diff --git a/BaseLib/zlib/CMakeLists.txt b/ThirdParty/zlib/CMakeLists.txt
similarity index 100%
rename from BaseLib/zlib/CMakeLists.txt
rename to ThirdParty/zlib/CMakeLists.txt
diff --git a/BaseLib/zlib/README b/ThirdParty/zlib/README
similarity index 100%
rename from BaseLib/zlib/README
rename to ThirdParty/zlib/README
diff --git a/BaseLib/zlib/adler32.c b/ThirdParty/zlib/adler32.c
similarity index 100%
rename from BaseLib/zlib/adler32.c
rename to ThirdParty/zlib/adler32.c
diff --git a/BaseLib/zlib/compress.c b/ThirdParty/zlib/compress.c
similarity index 100%
rename from BaseLib/zlib/compress.c
rename to ThirdParty/zlib/compress.c
diff --git a/BaseLib/zlib/crc32.c b/ThirdParty/zlib/crc32.c
similarity index 100%
rename from BaseLib/zlib/crc32.c
rename to ThirdParty/zlib/crc32.c
diff --git a/BaseLib/zlib/crc32.h b/ThirdParty/zlib/crc32.h
similarity index 100%
rename from BaseLib/zlib/crc32.h
rename to ThirdParty/zlib/crc32.h
diff --git a/BaseLib/zlib/deflate.c b/ThirdParty/zlib/deflate.c
similarity index 100%
rename from BaseLib/zlib/deflate.c
rename to ThirdParty/zlib/deflate.c
diff --git a/BaseLib/zlib/deflate.h b/ThirdParty/zlib/deflate.h
similarity index 100%
rename from BaseLib/zlib/deflate.h
rename to ThirdParty/zlib/deflate.h
diff --git a/BaseLib/zlib/gzclose.c b/ThirdParty/zlib/gzclose.c
similarity index 100%
rename from BaseLib/zlib/gzclose.c
rename to ThirdParty/zlib/gzclose.c
diff --git a/BaseLib/zlib/gzguts.h b/ThirdParty/zlib/gzguts.h
similarity index 100%
rename from BaseLib/zlib/gzguts.h
rename to ThirdParty/zlib/gzguts.h
diff --git a/BaseLib/zlib/gzlib.c b/ThirdParty/zlib/gzlib.c
similarity index 100%
rename from BaseLib/zlib/gzlib.c
rename to ThirdParty/zlib/gzlib.c
diff --git a/BaseLib/zlib/gzread.c b/ThirdParty/zlib/gzread.c
similarity index 100%
rename from BaseLib/zlib/gzread.c
rename to ThirdParty/zlib/gzread.c
diff --git a/BaseLib/zlib/gzwrite.c b/ThirdParty/zlib/gzwrite.c
similarity index 100%
rename from BaseLib/zlib/gzwrite.c
rename to ThirdParty/zlib/gzwrite.c
diff --git a/BaseLib/zlib/infback.c b/ThirdParty/zlib/infback.c
similarity index 100%
rename from BaseLib/zlib/infback.c
rename to ThirdParty/zlib/infback.c
diff --git a/BaseLib/zlib/inffast.c b/ThirdParty/zlib/inffast.c
similarity index 100%
rename from BaseLib/zlib/inffast.c
rename to ThirdParty/zlib/inffast.c
diff --git a/BaseLib/zlib/inffast.h b/ThirdParty/zlib/inffast.h
similarity index 100%
rename from BaseLib/zlib/inffast.h
rename to ThirdParty/zlib/inffast.h
diff --git a/BaseLib/zlib/inffixed.h b/ThirdParty/zlib/inffixed.h
similarity index 100%
rename from BaseLib/zlib/inffixed.h
rename to ThirdParty/zlib/inffixed.h
diff --git a/BaseLib/zlib/inflate.c b/ThirdParty/zlib/inflate.c
similarity index 100%
rename from BaseLib/zlib/inflate.c
rename to ThirdParty/zlib/inflate.c
diff --git a/BaseLib/zlib/inflate.h b/ThirdParty/zlib/inflate.h
similarity index 100%
rename from BaseLib/zlib/inflate.h
rename to ThirdParty/zlib/inflate.h
diff --git a/BaseLib/zlib/inftrees.c b/ThirdParty/zlib/inftrees.c
similarity index 100%
rename from BaseLib/zlib/inftrees.c
rename to ThirdParty/zlib/inftrees.c
diff --git a/BaseLib/zlib/inftrees.h b/ThirdParty/zlib/inftrees.h
similarity index 100%
rename from BaseLib/zlib/inftrees.h
rename to ThirdParty/zlib/inftrees.h
diff --git a/BaseLib/zlib/test/example.c b/ThirdParty/zlib/test/example.c
similarity index 100%
rename from BaseLib/zlib/test/example.c
rename to ThirdParty/zlib/test/example.c
diff --git a/BaseLib/zlib/test/infcover.c b/ThirdParty/zlib/test/infcover.c
similarity index 100%
rename from BaseLib/zlib/test/infcover.c
rename to ThirdParty/zlib/test/infcover.c
diff --git a/BaseLib/zlib/test/minigzip.c b/ThirdParty/zlib/test/minigzip.c
similarity index 100%
rename from BaseLib/zlib/test/minigzip.c
rename to ThirdParty/zlib/test/minigzip.c
diff --git a/BaseLib/zlib/trees.c b/ThirdParty/zlib/trees.c
similarity index 100%
rename from BaseLib/zlib/trees.c
rename to ThirdParty/zlib/trees.c
diff --git a/BaseLib/zlib/trees.h b/ThirdParty/zlib/trees.h
similarity index 100%
rename from BaseLib/zlib/trees.h
rename to ThirdParty/zlib/trees.h
diff --git a/BaseLib/zlib/uncompr.c b/ThirdParty/zlib/uncompr.c
similarity index 100%
rename from BaseLib/zlib/uncompr.c
rename to ThirdParty/zlib/uncompr.c
diff --git a/BaseLib/zlib/win32/zlib.def b/ThirdParty/zlib/win32/zlib.def
similarity index 100%
rename from BaseLib/zlib/win32/zlib.def
rename to ThirdParty/zlib/win32/zlib.def
diff --git a/BaseLib/zlib/win32/zlib1.rc b/ThirdParty/zlib/win32/zlib1.rc
similarity index 100%
rename from BaseLib/zlib/win32/zlib1.rc
rename to ThirdParty/zlib/win32/zlib1.rc
diff --git a/BaseLib/zlib/zconf.h.cmakein b/ThirdParty/zlib/zconf.h.cmakein
similarity index 100%
rename from BaseLib/zlib/zconf.h.cmakein
rename to ThirdParty/zlib/zconf.h.cmakein
diff --git a/BaseLib/zlib/zconf.h.in b/ThirdParty/zlib/zconf.h.in
similarity index 100%
rename from BaseLib/zlib/zconf.h.in
rename to ThirdParty/zlib/zconf.h.in
diff --git a/BaseLib/zlib/zconf.h.included b/ThirdParty/zlib/zconf.h.included
similarity index 100%
rename from BaseLib/zlib/zconf.h.included
rename to ThirdParty/zlib/zconf.h.included
diff --git a/BaseLib/zlib/zlib.h b/ThirdParty/zlib/zlib.h
similarity index 100%
rename from BaseLib/zlib/zlib.h
rename to ThirdParty/zlib/zlib.h
diff --git a/BaseLib/zlib/zlib.map b/ThirdParty/zlib/zlib.map
similarity index 100%
rename from BaseLib/zlib/zlib.map
rename to ThirdParty/zlib/zlib.map
diff --git a/BaseLib/zlib/zlib.pc.cmakein b/ThirdParty/zlib/zlib.pc.cmakein
similarity index 100%
rename from BaseLib/zlib/zlib.pc.cmakein
rename to ThirdParty/zlib/zlib.pc.cmakein
diff --git a/BaseLib/zlib/zlib.pc.in b/ThirdParty/zlib/zlib.pc.in
similarity index 100%
rename from BaseLib/zlib/zlib.pc.in
rename to ThirdParty/zlib/zlib.pc.in
diff --git a/BaseLib/zlib/zutil.c b/ThirdParty/zlib/zutil.c
similarity index 100%
rename from BaseLib/zlib/zutil.c
rename to ThirdParty/zlib/zutil.c
diff --git a/BaseLib/zlib/zutil.h b/ThirdParty/zlib/zutil.h
similarity index 100%
rename from BaseLib/zlib/zutil.h
rename to ThirdParty/zlib/zutil.h
diff --git a/Utils/SimpleMeshCreation/createMeshElemPropertiesFromASCRaster.cpp b/Utils/SimpleMeshCreation/createMeshElemPropertiesFromASCRaster.cpp
index 0d394c615e245efde85524c375803e389a9492e1..b22f22767f826d16df75080633119574c8f47b8a 100644
--- a/Utils/SimpleMeshCreation/createMeshElemPropertiesFromASCRaster.cpp
+++ b/Utils/SimpleMeshCreation/createMeshElemPropertiesFromASCRaster.cpp
@@ -11,8 +11,8 @@
 
 // BaseLib
 #include "tclap/CmdLine.h"
-// BaseLib/logog
-#include "logog.hpp"
+// ThirdParty/logog
+#include "logog/include/logog.hpp"
 // BaseLib
 #include "StringTools.h"
 #include "quicksort.h"
diff --git a/scripts/cmake/Coverage.cmake b/scripts/cmake/Coverage.cmake
index 7edfcdcb730837689cddec813dd799f287720b68..225c292e972c871fb9c1ca51e838ccd47ae8560e 100644
--- a/scripts/cmake/Coverage.cmake
+++ b/scripts/cmake/Coverage.cmake
@@ -4,9 +4,7 @@ SET(COVERAGE_EXCLUDES
 	'/usr/*'
 	'${CMAKE_BINARY_DIR}/*'
 	'${CMAKE_SOURCE_DIR}/tests/*'
-	'${CMAKE_SOURCE_DIR}/BaseLib/zlib/*'
-	'${CMAKE_SOURCE_DIR}/BaseLib/logog/*'
-	'${CMAKE_SOURCE_DIR}/BaseLib/RapidXML/*'
+	'${CMAKE_SOURCE_DIR}/ThirdParty/*'
 )
 
 IF(JENKINS_URL)
diff --git a/scripts/cmake/ProjectSetup.cmake b/scripts/cmake/ProjectSetup.cmake
index d9dcd9f91564af5c482d8f544a6cc6242d3d44a8..b6a44fd93486e19a8664d97b407a9cdf0b1f8ef7 100644
--- a/scripts/cmake/ProjectSetup.cmake
+++ b/scripts/cmake/ProjectSetup.cmake
@@ -17,10 +17,5 @@ ELSE()
 	ADD_DEFINITIONS(-DLOGOG_LEVEL=${OGS_LOG_LEVEL})
 ENDIF() # NOT DEFINED OGS_LOG_LEVEL
 
-INCLUDE_DIRECTORIES (
-	${CMAKE_SOURCE_DIR}/BaseLib/logog/include
-)
-
-
 # Enable Visual Studio project folder grouping
 SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
\ No newline at end of file
diff --git a/scripts/cmake/SubmoduleSetup.cmake b/scripts/cmake/SubmoduleSetup.cmake
index 9c99899b9514a77ce01169b2f06340342706ac1b..06d8946c0f0ad596cac8c3c2fdae48e1b6689652 100644
--- a/scripts/cmake/SubmoduleSetup.cmake
+++ b/scripts/cmake/SubmoduleSetup.cmake
@@ -1,7 +1,7 @@
 # This file initializes the required submodules
 
 SET(REQUIRED_SUBMODULES
-	Tests/quickcheck
+	ThirdParty/quickcheck
 )
 
 FOREACH(SUBMODULE ${REQUIRED_SUBMODULES})
diff --git a/scripts/docs/Doxyfile.in b/scripts/docs/Doxyfile.in
index 7fc04f88cecd9e47a9889ed1449696659580654d..ab6018f6ce58932223af3c55fb784081badd68f9 100644
--- a/scripts/docs/Doxyfile.in
+++ b/scripts/docs/Doxyfile.in
@@ -712,8 +712,7 @@ RECURSIVE              = YES
 # Note that relative paths are relative to the directory from which doxygen is
 # run.
 
-EXCLUDE                = ${CMAKE_SOURCE_DIR}/BaseLib/logog \
-                         ${CMAKE_SOURCE_DIR}/BaseLib/tclap
+EXCLUDE                = ${CMAKE_SOURCE_DIR}/ThirdParty
 
 # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
 # directories that are symbolic links (a Unix file system feature) are excluded