diff --git a/.gitignore b/.gitignore
index 84f373c037acd2052a9ff3bc35c4ed2b88f95092..e65f45818ae6e39b278554a32e9fddca55e4951a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,8 @@ build
 .project
 .kdev4
 *.kdev4
+.vscode
+CMakeLists.txt.user
 #files ending with ~ are emacs backups
 *~
 #files ending with .swp might show up when using vi
diff --git a/cmake/Modules/Findreadline.cmake b/cmake/Modules/Findreadline.cmake
index 46ba6c055a11810bef8be2a3d723c8eade6f25a0..8f432fc5afc82759c4deadfd2a61a0335cca160a 100644
--- a/cmake/Modules/Findreadline.cmake
+++ b/cmake/Modules/Findreadline.cmake
@@ -3,11 +3,11 @@ find_path( readline_ROOT_DIR NAMES include/readline/readline.h )
 
 # Search for include directory
 find_path( readline_INCLUDE_DIR NAMES readline/readline.h
-                                HINTS ${Readline_ROOT_DIR}/include )
+                                HINTS ${readline_ROOT_DIR}/include )
 
 # Search for library
 find_library( readline_LIBRARY NAMES readline
-                               HINTS ${Readline_ROOT_DIR}/lib )
+                               HINTS ${readline_ROOT_DIR}/lib )
 
 # use a macro provided by CMake to check if all the listed arguments are valid and set readline_FOUND accordingly
 include(FindPackageHandleStandardArgs)
diff --git a/cmake/add_dependency.cmake b/cmake/add_dependency.cmake
index eef63ea8bfcb7653b9ea401e430c9954559d17e6..06ce179102e4bf3d1bf74118491192a016c67a3a 100644
--- a/cmake/add_dependency.cmake
+++ b/cmake/add_dependency.cmake
@@ -47,6 +47,6 @@ FUNCTION(add_dependency dependency_project_name required_version)
   SET(${dependency_project_name}_FOUND ${${dependency_project_name}_FOUND} PARENT_SCOPE)
   SET(${dependency_project_name}_VERSION ${${dependency_project_name}_VERSION} PARENT_SCOPE)
   SET(${dependency_project_name}_INCLUDE_DIRS ${${dependency_project_name}_INCLUDE_DIRS} PARENT_SCOPE)
-
+  SET(${dependency_project_name}_PREFIX ${${dependency_project_name}_PREFIX} PARENT_SCOPE)
 ENDFUNCTION(add_dependency)
 
diff --git a/cmake/enable_cxx11_support.cmake b/cmake/enable_cxx11_support.cmake
index 848fac30af30c1b5f14084b25316397e9d864807..b5f87dd77b6e4754034c9561e9dfc8747047b51e 100644
--- a/cmake/enable_cxx11_support.cmake
+++ b/cmake/enable_cxx11_support.cmake
@@ -1,6 +1,10 @@
 #######################################################################################################################
 # enable_cxx11_support.cmake
 #
+# NOTE: Do not use this routine! Use enable_latest_css_support.cmake instead, even if you only need C++11, as the
+#       compiler always uses the strictest ("oldest") specified standard if mulitple flags are given. This will create
+#       problems when combining multiple projects (libraries...) requiring different C++ standards.
+#
 # Enable C++-11 support by selecting the appropriate compiler flag. The flag will be appended to all of the following
 # cmake variables:
 # - CMAKE_CXX_FLAGS
diff --git a/cmake/enable_latest_cxx_support.cmake b/cmake/enable_latest_cxx_support.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..21d015168dd858378961e99889b4f009fb3b45bf
--- /dev/null
+++ b/cmake/enable_latest_cxx_support.cmake
@@ -0,0 +1,47 @@
+#######################################################################################################################
+# enable_latest_cxx_support.cmake
+#
+# Enable the latest C++ standard supported by the compiler. by selecting the appropriate compiler flag. The flag will
+# be appended to all of the following cmake variables:
+# - CMAKE_CXX_FLAGS
+# - ${PROJECT_NAME}_CXX_FLAGS
+# - ${PROJECT_NAME}_CMAKE_CXX_FLAGS
+#
+#######################################################################################################################
+
+#######################################################################################################################
+#
+# IMPORTANT NOTE:
+#
+# DO NOT MODIFY THIS FILE inside a project. Instead update the project-template repository and pull the change from
+# there. Make sure to keep the file generic, since it will be used by other projects, too.
+#
+# If you have modified this file inside a project despite this warning, make sure to cherry-pick all your changes
+# into the project-template repository immediately.
+#
+#######################################################################################################################
+
+include(CheckCXXCompilerFlag)
+CHECK_CXX_COMPILER_FLAG("-std=c++17" COMPILER_SUPPORTS_CXX17)
+CHECK_CXX_COMPILER_FLAG("-std=c++14" COMPILER_SUPPORTS_CXX14)
+CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11)
+CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X)
+if(COMPILER_SUPPORTS_CXX17)
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
+    set(${PROJECT_NAME}_CXX_FLAGS "${${PROJECT_NAME}_CXX_FLAGS} -std=c++17")
+    set(${PROJECT_NAME}_CMAKE_CXX_FLAGS "${${PROJECT_NAME}_CMAKE_CXX_FLAGS} -std=c++17")
+elseif(COMPILER_SUPPORTS_CXX14)
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++14")
+    set(${PROJECT_NAME}_CXX_FLAGS "${${PROJECT_NAME}_CXX_FLAGS} -std=c++14")
+    set(${PROJECT_NAME}_CMAKE_CXX_FLAGS "${${PROJECT_NAME}_CMAKE_CXX_FLAGS} -std=c++14")
+elseif(COMPILER_SUPPORTS_CXX11)
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+    set(${PROJECT_NAME}_CXX_FLAGS "${${PROJECT_NAME}_CXX_FLAGS} -std=c++11")
+    set(${PROJECT_NAME}_CMAKE_CXX_FLAGS "${${PROJECT_NAME}_CMAKE_CXX_FLAGS} -std=c++11")
+elseif(COMPILER_SUPPORTS_CXX0X)
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
+    set(${PROJECT_NAME}_CXX_FLAGS "${${PROJECT_NAME}_CXX_FLAGS} -std=c++0x")
+    set(${PROJECT_NAME}_CMAKE_CXX_FLAGS "${${PROJECT_NAME}_CMAKE_CXX_FLAGS} -std=c++0x")
+else()
+    message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.")
+endif()
diff --git a/doc/ChimeraTK_Logo_whitebg.png b/doc/ChimeraTK_Logo_whitebg.png
new file mode 100644
index 0000000000000000000000000000000000000000..30b8adf52f9ea143966c34cea545bc904199a87e
Binary files /dev/null and b/doc/ChimeraTK_Logo_whitebg.png differ
diff --git a/doc/DESY_logo.png b/doc/DESY_logo.png
index 1a68c33660eaba69b35d4d1d8cc68e86f673842d..5289ef1db22e8c1405b4b510a35f55eb8db5350e 100644
Binary files a/doc/DESY_logo.png and b/doc/DESY_logo.png differ