diff --git a/.ci/gitlab/config.yml b/.ci/gitlab/config.yml
index 0c55941ab4ff844d19986e26cf668232db4e95e8..076f69c4c2458b4d2fd429a8ea0d76fa493303d0 100644
--- a/.ci/gitlab/config.yml
+++ b/.ci/gitlab/config.yml
@@ -11,12 +11,12 @@ variables:
     GIT_SUBMODULE_STRATEGY: recursive
     TRAVIS_BRANCH: ${CI_COMMIT_REF_NAME}
     TRAVIS_COMMIT: ${CI_COMMIT_SHA}
-    MY_MODULE: dune-xt
     CCACHE_BASEDIR: ${CI_PROJECT_DIR}
     CCACHE_DIR: "${CI_PROJECT_DIR}/.ccache"
     CCACHE_COMPILERCHECK: content
     CCACHE_COMPRESS: "true"
     PYTEST_ADDOPTS: "-s"
+    MY_MODULE: dune-xt
     BASE_PROJECT: zivgitlab.wwu.io/ag-ohlberger/dune-community/dune-xt-super
 
 .image_builder:
@@ -31,7 +31,9 @@ variables:
     retry:
         max: 2
         when:
-            - always
+            - runner_system_failure
+            - stuck_or_timeout_failure
+            - api_failure
     image: harbor.uni-muenster.de/proxy-docker/library/docker:19.03.12
     variables:
         DOCKER_HOST: tcp://docker:2375/
@@ -69,7 +71,9 @@ variables:
     retry:
         max: 2
         when:
-            - always
+            - runner_system_failure
+            - stuck_or_timeout_failure
+            - api_failure
     image: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA}
     cache:
       key: "$CI_JOB_NAME"
@@ -90,6 +94,12 @@ variables:
 
 .pre-commit:
     stage: sanity
+    retry:
+        max: 2
+        when:
+            - runner_system_failure
+            - stuck_or_timeout_failure
+            - api_failure
     image: "python:3.9"
     cache:
       paths:
@@ -148,8 +158,6 @@ common unstable_gcc_full headercheck:
     variables:
         CI_IMAGE: debian-unstable_gcc_full
         TESTS_MODULE_SUBDIR: common
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian-unstable_gcc_full"]
     script:
@@ -172,8 +180,6 @@ grid unstable_gcc_full headercheck:
     variables:
         CI_IMAGE: debian-unstable_gcc_full
         TESTS_MODULE_SUBDIR: grid
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian-unstable_gcc_full"]
     script:
@@ -189,6 +195,7 @@ functions unstable_gcc_full cpp:
     stage: cpp
     needs: ["debian-unstable_gcc_full"]
     script:
+          - ccache --max-size 10G
           - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash
 
 functions unstable_gcc_full headercheck:
@@ -196,8 +203,6 @@ functions unstable_gcc_full headercheck:
     variables:
         CI_IMAGE: debian-unstable_gcc_full
         TESTS_MODULE_SUBDIR: functions
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian-unstable_gcc_full"]
     script:
@@ -220,8 +225,6 @@ la unstable_gcc_full headercheck:
     variables:
         CI_IMAGE: debian-unstable_gcc_full
         TESTS_MODULE_SUBDIR: la
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian-unstable_gcc_full"]
     script:
@@ -244,8 +247,6 @@ common gcc_full headercheck:
     variables:
         CI_IMAGE: debian_gcc_full
         TESTS_MODULE_SUBDIR: common
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian_gcc_full"]
     script:
@@ -268,8 +269,6 @@ grid gcc_full headercheck:
     variables:
         CI_IMAGE: debian_gcc_full
         TESTS_MODULE_SUBDIR: grid
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian_gcc_full"]
     script:
@@ -285,6 +284,7 @@ functions gcc_full cpp:
     stage: cpp
     needs: ["debian_gcc_full"]
     script:
+          - ccache --max-size 10G
           - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash
 
 functions gcc_full headercheck:
@@ -292,8 +292,6 @@ functions gcc_full headercheck:
     variables:
         CI_IMAGE: debian_gcc_full
         TESTS_MODULE_SUBDIR: functions
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian_gcc_full"]
     script:
@@ -316,8 +314,6 @@ la gcc_full headercheck:
     variables:
         CI_IMAGE: debian_gcc_full
         TESTS_MODULE_SUBDIR: la
-    tags:
-        - dustin
     stage: headercheck
     needs: ["debian_gcc_full"]
     script:
@@ -328,6 +324,8 @@ common clang_full cpp:
     variables:
         CI_IMAGE: debian_clang_full
         TESTS_MODULE_SUBDIR: common
+    tags:
+        - dustin
     stage: cpp
     needs: ["debian_clang_full"]
     script:
@@ -348,6 +346,8 @@ grid clang_full cpp:
     variables:
         CI_IMAGE: debian_clang_full
         TESTS_MODULE_SUBDIR: grid
+    tags:
+        - dustin
     stage: cpp
     needs: ["debian_clang_full"]
     script:
@@ -368,9 +368,12 @@ functions clang_full cpp:
     variables:
         CI_IMAGE: debian_clang_full
         TESTS_MODULE_SUBDIR: functions
+    tags:
+        - dustin
     stage: cpp
     needs: ["debian_clang_full"]
     script:
+          - ccache --max-size 10G
           - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_cpp.bash
 
 functions clang_full headercheck:
@@ -388,6 +391,8 @@ la clang_full cpp:
     variables:
         CI_IMAGE: debian_clang_full
         TESTS_MODULE_SUBDIR: la
+    tags:
+        - dustin
     stage: cpp
     needs: ["debian_clang_full"]
     script:
diff --git a/.ci/gitlab/config_template.py b/.ci/gitlab/config_template.py
index 549f929f6f198f2d6f94e3c9f30b210406b7d678..dc65fb99a33d5a520486f9736881180532a0efcf 100755
--- a/.ci/gitlab/config_template.py
+++ b/.ci/gitlab/config_template.py
@@ -4,169 +4,14 @@
 import os
 import jinja2
 from itertools import product
+import urllib.request
 
-tpl = r'''# THIS FILE IS AUTOGENERATED -- DO NOT EDIT       #
-# Edit and Re-run .ci/gitlab/config_template.py instead  #
-stages:
-  - sanity
-  - images
-{%- for kind in kinds %}
-  - {{kind}}
-{%- endfor %}
-  - python
-
-variables:
-    GIT_SUBMODULE_STRATEGY: recursive
-    TRAVIS_BRANCH: ${CI_COMMIT_REF_NAME}
-    TRAVIS_COMMIT: ${CI_COMMIT_SHA}
-    MY_MODULE: dune-xt
-    CCACHE_BASEDIR: ${CI_PROJECT_DIR}
-    CCACHE_DIR: "${CI_PROJECT_DIR}/.ccache"
-    CCACHE_COMPILERCHECK: content
-    CCACHE_COMPRESS: "true"
-    PYTEST_ADDOPTS: "-s"
-    BASE_PROJECT: zivgitlab.wwu.io/ag-ohlberger/dune-community/dune-xt-super
-
-.image_builder:
-    tags:
-      - docker-in-docker
-      - long execution time
-    stage: images
-    rules:
-        - if: '$CI_COMMIT_REF_NAME =~ /^staging.*/'
-          when: never
-        - when: on_success
-    retry:
-        max: 2
-        when:
-            - always
-    image: harbor.uni-muenster.de/proxy-docker/library/docker:19.03.12
-    variables:
-        DOCKER_HOST: tcp://docker:2375/
-        DOCKER_DRIVER: overlay2
-        IMAGE: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA}
-    before_script:
-      - |
-        docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
-        apk --update add py3-pip openssh-client rsync git file bash python3 curl
-        pip3 install -U docker jinja2 docopt
-
-        export BASEIMAGE="${MY_MODULE}-testing_${CI_IMAGE}:${CI_COMMIT_REF_NAME/\//_}"
-        # get image with fallback to master branch of the super repo
-        docker pull ${BASE_PROJECT}/${BASEIMAGE} || export BASEIMAGE="${MY_MODULE}-testing_${CI_IMAGE}:master"
-        docker pull ${BASE_PROJECT}/${BASEIMAGE}
-    script:
-      - |
-        git submodule update --init --recursive
-        docker build --build-arg BASE=${BASEIMAGE} -t ${IMAGE} -f .ci/gitlab/Dockerfile .
-        docker push ${IMAGE}
-    services:
-        - name: harbor.uni-muenster.de/proxy-docker/library/docker:dind
-          alias: docker
-    environment:
-        name: unsafe
-
-.subdir-test:
-    tags:
-      - long execution time
-    stage: test
-    rules:
-        - if: '$CI_COMMIT_REF_NAME =~ /^staging.*/'
-          when: never
-        - when: on_success
-    retry:
-        max: 2
-        when:
-            - always
-    image: ${CI_REGISTRY_IMAGE}/ci_testing_${CI_IMAGE}:${CI_COMMIT_SHORT_SHA}
-    cache:
-      key: "$CI_JOB_NAME"
-      paths:
-        - .ccache
-    before_script:
-      - |
-        mkdir /home/dune-ci/testresults && chmod -R 777 /home/dune-ci/testresults
-        [[ -f ./.gitsuper ]] && echo "Please remove .gitsuper from the repo" && exit 1
-        ccache --zero-stats || true
-    after_script:
-      - ccache --show-stats
-    artifacts:
-      reports:
-        junit: '/home/dune-ci/testresults/*xml'
-    environment:
-        name: unsafe
-
-.pre-commit:
-    stage: sanity
-    image: "python:3.9"
-    cache:
-      paths:
-        - ${CI_PROJECT_DIR}/.cache/pre-commit
-    variables:
-        PRECOMMIT: "pre-commit run --all"
-    before_script:
-        - pip install pre-commit
-        - pre-commit install --install-hooks
-
-format_check:
-    extends: .pre-commit
-    script:
-        - ${PRECOMMIT} clang-format
-        - ${PRECOMMIT} yapf
-        - ${PRECOMMIT} trailing-whitespace
-
-lint:
-    extends: .pre-commit
-    script:
-        - ${PRECOMMIT} check-added-large-files
-        #- ${PRECOMMIT} flake8 disabled for now, finds lots of issue
-        - ${PRECOMMIT} debug-statements
-        - ${PRECOMMIT} check-yaml
-
-
-{% for image in images -%}
-{{ image }}:
-    extends: .image_builder
-    variables:
-        CI_IMAGE: {{ image }}
-{% endfor %}
-
-{% for image, subdir, kind in matrix %}
-{{subdir}} {{ image[image.find('debian')+1+6:] }} {{kind}}:
-    extends: .subdir-test
-    variables:
-        CI_IMAGE: {{ image }}
-        TESTS_MODULE_SUBDIR: {{ subdir }}
-    {%- if 'gcc' in image %}
-    tags:
-        - dustin
-    {%- endif %}
-    stage: {{kind}}
-    needs: ["{{image}}"]
-    script:
-          - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_{{kind}}.bash
-{% endfor %}
-
-{% for image in images %}
-{{ image[image.find('debian')+1+6:] }} python:
-    extends: .subdir-test
-    variables:
-        CI_IMAGE: {{ image }}
-    tags:
-        - dustin
-    stage: python
-    needs: ["{{image}}"]
-    script:
-          - /home/dune-ci/src/${MY_MODULE}/.ci/shared/scripts/test_python.bash
-{% endfor %}
-
-'''
-
-
+template_url = 'https://raw.githubusercontent.com/dune-community/dune-xt-ci/master/xt_and_gdt_config_template.txt'
+tpl = urllib.request.urlopen(template_url).read().decode('utf-8').replace('DUNE_XT_OR_DUNE_GDT', 'dune-xt')
 tpl = jinja2.Template(tpl)
 images = ['debian-unstable_gcc_full', 'debian_gcc_full', 'debian_clang_full']
 subdirs = ['common', 'grid', 'functions', 'la']
 kinds = ['cpp', 'headercheck']
 matrix = product(images, subdirs, kinds)
 with open(os.path.join(os.path.dirname(__file__), 'config.yml'), 'wt') as yml:
-    yml.write(tpl.render(matrix=matrix, images=images, kinds=kinds))
+    yml.write(tpl.render(matrix=matrix, images=images, kinds=kinds, subdirs=subdirs))
diff --git a/.ci/shared b/.ci/shared
index b81e4900992b4e32457247403f0462ae255ec15c..3033fe7a9270cedbdf72275da69fda1d4ac97427 160000
--- a/.ci/shared
+++ b/.ci/shared
@@ -1 +1 @@
-Subproject commit b81e4900992b4e32457247403f0462ae255ec15c
+Subproject commit 3033fe7a9270cedbdf72275da69fda1d4ac97427
diff --git a/.vcsetup b/.vcsetup
index 1efe93b62e36634240af102da555c2b90d937abe..a9ada423332d91cadddfc7ba50ce889ed1758435 160000
--- a/.vcsetup
+++ b/.vcsetup
@@ -1 +1 @@
-Subproject commit 1efe93b62e36634240af102da555c2b90d937abe
+Subproject commit a9ada423332d91cadddfc7ba50ce889ed1758435
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2176e3f630ea8f40fd41e78cc5e8f5046c5317bd..87d480a372e0f1ac8c7d0599f46cdde5119d57e3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,11 +25,11 @@ set(ENV{PKG_CONFIG_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/../local/lib/pkgconfig:$EN
 set(CMAKE_COLOR_MAKEFILE ON)
 
 # guess dune-common build dir
-if(NOT (dune-common_DIR OR dune-common_ROOT OR "${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*"))
-  string(REPLACE ${CMAKE_PROJECT_NAME}
-                 dune-common
-                 dune-common_DIR
-                 ${PROJECT_BINARY_DIR})
+if(NOT
+   (dune-common_DIR
+    OR dune-common_ROOT
+    OR "${CMAKE_PREFIX_PATH}" MATCHES ".*dune-common.*"))
+  string(REPLACE ${CMAKE_PROJECT_NAME} dune-common dune-common_DIR ${PROJECT_BINARY_DIR})
 endif()
 
 # find dune-common and set the module path
@@ -52,13 +52,14 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
 
 find_package(Python3 REQUIRED COMPONENTS Interpreter Development)
 add_subdirectory(pybind11)
-dune_enable_all_packages(INCLUDE_DIRS
-                         ${dune-xt_SOURCE_DIR}/dune
-                         ${Python3_INCLUDE_DIRS}
-                         MODULE_LIBRARIES
-                         dunepybindxi
-                         gtest_dune_xt
-                         dunext)
+dune_enable_all_packages(
+  INCLUDE_DIRS
+  ${dune-xt_SOURCE_DIR}/dune
+  ${Python3_INCLUDE_DIRS}
+  MODULE_LIBRARIES
+  dunepybindxi
+  gtest_dune_xt
+  dunext)
 
 target_link_libraries(dunepybindxi PRIVATE pybind11::module)
 target_link_libraries(dunepybindxi PRIVATE ${Python3_LIBRARIES})
@@ -68,10 +69,11 @@ target_include_directories(dunepybindxi PRIVATE pybind11::module)
 # ----------------------------------------------------------------------------------------------------
 # General Settings
 # ----------------------------------------------------------------------------------------------------
-execute_process(COMMAND ${CMAKE_SOURCE_DIR}/getRevision.sh
-                OUTPUT_VARIABLE COMMIT
-                ERROR_VARIABLE shell_error
-                OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(
+  COMMAND ${CMAKE_SOURCE_DIR}/getRevision.sh
+  OUTPUT_VARIABLE COMMIT
+  ERROR_VARIABLE shell_error
+  OUTPUT_STRIP_TRAILING_WHITESPACE)
 
 # silence most warnings we are not responsible for
 include(DuneUtils)
@@ -83,6 +85,10 @@ include(DunePybindxiInstallPythonPackage)
 dune_pybindxi_install_python_package(PATH python)
 include_dependent_binary_python_dirs()
 
+# install jinja2 for code generation into the dune-python virtualenv
+execute_process(COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} -m pip install jinja2 pytest-cov ipywidgets k3d xmljson
+                        vtk lxml loguru)
+
 add_subdirectory(python)
 
 include(GridUtils)
@@ -98,6 +104,6 @@ add_pylicense()
 finalize_dune_project(GENERATE_CONFIG_H_CMAKE)
 
 # patch config.h to remove warnings about unused HAVE_GRIDTYPE
-execute_process(COMMAND sed -i -e
-                        "s,^\\([ ]*\\)\#if HAVE_GRIDTYPE$,\\1\#if defined(HAVE_GRIDTYPE) \\&\\& HAVE_GRIDTYPE,g"
-                        ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+execute_process(
+  COMMAND sed -i -e "s,^\\([ ]*\\)\#if HAVE_GRIDTYPE$,\\1\#if defined(HAVE_GRIDTYPE) \\&\\& HAVE_GRIDTYPE,g"
+          ${CMAKE_CURRENT_BINARY_DIR}/config.h)
diff --git a/cmake/UseDoxygen.cmake b/cmake/UseDoxygen.cmake
index 4a901a9666ff7a194bb60334be02f14154e3ced4..561d63aa9cb88527e52ee335e2d30047bf3c3f47 100644
--- a/cmake/UseDoxygen.cmake
+++ b/cmake/UseDoxygen.cmake
@@ -25,9 +25,9 @@
 # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
 # THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
 
 # * Run Doxygen
 #
@@ -67,9 +67,10 @@ endmacro()
 find_package(Doxygen)
 
 if(DOXYGEN_FOUND)
-  find_file(DOXYFILE_IN
-            NAMES "Doxyfile.cmake.in" "Doxyfile.in"
-            PATHS "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_ROOT}/Modules/")
+  find_file(
+    DOXYFILE_IN
+    NAMES "Doxyfile.cmake.in" "Doxyfile.in"
+    PATHS "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_ROOT}/Modules/")
 
   include(FindPackageHandleStandardArgs)
   find_package_handle_standard_args(Doxyfile.in DEFAULT_MSG DOXYFILE_IN)
@@ -81,7 +82,10 @@ if(DOXYGEN_FOUND AND DOXYFILE_IN)
   usedoxygen_set_default(DOXYFILE_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/doc")
   usedoxygen_set_default(DOXYFILE_HTML_DIR "html")
 
-  set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_HTML_DIR}")
+  set_property(
+    DIRECTORY
+    APPEND
+    PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_HTML_DIR}")
 
   set(DOXYFILE_LATEX "NO")
   set(DOXYFILE_PDFLATEX "NO")
@@ -92,7 +96,10 @@ if(DOXYGEN_FOUND AND DOXYFILE_IN)
     set(DOXYFILE_LATEX "YES")
     usedoxygen_set_default(DOXYFILE_LATEX_DIR "latex")
 
-    set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_LATEX_DIR}")
+    set_property(
+      DIRECTORY
+      APPEND
+      PROPERTY ADDITIONAL_MAKE_CLEAN_FILES "${DOXYFILE_OUTPUT_DIR}/${DOXYFILE_LATEX_DIR}")
 
     if(PDFLATEX_COMPILER)
       set(DOXYFILE_PDFLATEX "YES")
diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt
index 8b14c21e100444a55f3fd7c674a67a0760579aff..df6af9cafd708dfc5c2670ad027c8c2b1d83051c 100644
--- a/cmake/modules/CMakeLists.txt
+++ b/cmake/modules/CMakeLists.txt
@@ -11,18 +11,19 @@
 #   Tobias Leibner  (2020)
 # ~~~
 
-install(FILES DuneTBB.cmake
-              DuneUtils.cmake
-              DuneXtMacros.cmake
-              DuneXtVersionHelper.cmake
-              DunePybindxiMacros.cmake
-              DunePybindxiUtils.cmake
-              FindPythonLibsNew.cmake
-              FindEigen3.cmake
-              FindFASP.cmake
-              FindLIKWID.cmake
-              FindTBB.cmake
-              GridUtils.cmake
-              XtCompilerSupport.cmake
-              XtTooling.cmake
-        DESTINATION ${DUNE_INSTALL_MODULEDIR})
+install(
+  FILES DuneTBB.cmake
+        DuneUtils.cmake
+        DuneXtMacros.cmake
+        DuneXtVersionHelper.cmake
+        DunePybindxiMacros.cmake
+        DunePybindxiUtils.cmake
+        FindPythonLibsNew.cmake
+        FindEigen3.cmake
+        FindFASP.cmake
+        FindLIKWID.cmake
+        FindTBB.cmake
+        GridUtils.cmake
+        XtCompilerSupport.cmake
+        XtTooling.cmake
+  DESTINATION ${DUNE_INSTALL_MODULEDIR})
diff --git a/cmake/modules/DunePybindxiInstallPythonPackage.cmake b/cmake/modules/DunePybindxiInstallPythonPackage.cmake
index ee162243683408448bf1043b1211804f6a127ec1..2f351c23e26707b0f2b8f2079f8d07f29333cf6b 100644
--- a/cmake/modules/DunePybindxiInstallPythonPackage.cmake
+++ b/cmake/modules/DunePybindxiInstallPythonPackage.cmake
@@ -21,8 +21,8 @@ macro(include_dependent_binary_python_dirs) # disable most warnings from depende
   endforeach(_mod DEPENDENCIES)
 endmacro(include_dependent_binary_python_dirs)
 
-# copy of dune_python_install_package from dune-common changes: - package is always installed into the dune-env, even
-# if a setup.py.in is found instead of a setup.py - if a setup.py.in is found, the whole directory is symlinked to the
+# copy of dune_python_install_package from dune-common changes: - package is always installed into the dune-env, even if
+# a setup.py.in is found instead of a setup.py - if a setup.py.in is found, the whole directory is symlinked to the
 # binary dir
 function(dune_pybindxi_install_python_package)
   # Parse Arguments
@@ -70,8 +70,8 @@ function(dune_pybindxi_install_python_package)
   if(IS_DIRECTORY ${DUNE_PYTHON_WHEELHOUSE})
     set(WHEEL_OPTION "--find-links=${DUNE_PYTHON_WHEELHOUSE}")
     #
-    # The following line is a bummer! We cannot have editable packages once we start using global installations! This
-    # is related to the nightmare that is https://github.com/pypa/pip/issues/3
+    # The following line is a bummer! We cannot have editable packages once we start using global installations! This is
+    # related to the nightmare that is https://github.com/pypa/pip/issues/3
     #
     set(INSTALL_EDITABLE FALSE)
   endif()
@@ -104,10 +104,7 @@ function(dune_pybindxi_install_python_package)
 
   if(PYINST_PUREPYTHON AND DUNE_PYTHON_VIRTUALENV_SETUP)
     message("-- Installing python package at ${CMAKE_CURRENT_SOURCE_DIR}/${PYINST_PATH} into the virtualenv...")
-    dune_execute_process(COMMAND
-                         "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}"
-                         "${INSTALL_CMDLINE}"
-                         ERROR_MESSAGE
+    dune_execute_process(COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "${INSTALL_CMDLINE}" ERROR_MESSAGE
                          "dune_python_install_package: Error installing into virtualenv!")
   endif()
 
@@ -119,29 +116,28 @@ function(dune_pybindxi_install_python_package)
   dune_module_path(MODULE dune-common RESULT scriptdir SCRIPT_DIR)
 
   # Determine a target name for installing this package
-  string(REPLACE "/"
-                 "_"
-                 targetname
-                 "install_python_${CMAKE_CURRENT_SOURCE_DIR}_${PYINST_PATH}")
+  string(REPLACE "/" "_" targetname "install_python_${CMAKE_CURRENT_SOURCE_DIR}_${PYINST_PATH}")
 
   # Add a custom target that globally installs this package if requested
-  add_custom_target(${targetname}
-                    COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} ${INSTALL_CMDLINE}
-                    COMMENT "Installing the python package at ${PYINST_FULLPATH}")
+  add_custom_target(
+    ${targetname}
+    COMMAND ${DUNE_PYTHON_VIRTUALENV_EXECUTABLE} ${INSTALL_CMDLINE}
+    COMMENT "Installing the python package at ${PYINST_FULLPATH}")
 
   add_dependencies(install_python ${targetname})
 
   # Define rules for `make install` that install a wheel into a central wheelhouse
   #
-  # NB: This is necessary, to allow mixing installed and non-installed modules with python packages. The wheelhouse
-  # will allow to install any missing python packages into a virtual environment.
+  # NB: This is necessary, to allow mixing installed and non-installed modules with python packages. The wheelhouse will
+  # allow to install any missing python packages into a virtual environment.
   #
 
   # Construct the wheel installation commandline
   set(WHEEL_COMMAND ${PYTHON_EXECUTABLE} -m pip wheel -w ${DUNE_PYTHON_WHEELHOUSE} ${PYINST_FULLPATH})
 
   # Add the installation rule
-  install(CODE "message(\"Installing wheel for python package at ${PYINST_FULLPATH}...\")
+  install(
+    CODE "message(\"Installing wheel for python package at ${PYINST_FULLPATH}...\")
                 dune_execute_process(COMMAND ${WHEEL_COMMAND}
                                      ERROR_MESSAGE \"Error installing wheel for python package at ${PYINST_FULLPATH}\"
                                      )")
diff --git a/cmake/modules/DunePybindxiUtils.cmake b/cmake/modules/DunePybindxiUtils.cmake
index 38110958b406b6bbe40a08a9ab9162deed6a2578..755d86620c100c9b371048ba820ddc105563be35 100644
--- a/cmake/modules/DunePybindxiUtils.cmake
+++ b/cmake/modules/DunePybindxiUtils.cmake
@@ -15,8 +15,8 @@
 # ~~~
 
 # Build a Python extension module: dune_pybindxi_add_module(<name> [MODULE | SHARED] [EXCLUDE_FROM_ALL] [NO_EXTRAS]
-# [THIN_LTO] source1 [source2 ...])
-# Renamed copy of pybind11_add_module, added code blocks are marked with dune-pybindxi START/END
+# [THIN_LTO] source1 [source2 ...]) Renamed copy of pybind11_add_module, added code blocks are marked with dune-pybindxi
+# START/END
 function(dune_pybindxi_add_module target_name)
   set(options "MODULE;SHARED;EXCLUDE_FROM_ALL;NO_EXTRAS;SYSTEM;THIN_LTO;OPT_SIZE")
   # the next two lines were added/modified compared to the original function
@@ -61,9 +61,9 @@ function(dune_pybindxi_add_module target_name)
   pybind11_extension(${target_name})
 
   # -fvisibility=hidden is required to allow multiple modules compiled against different pybind versions to work
-  # properly, and for some features (e.g. py::module_local).  We force it on everything inside the `pybind11`
-  # namespace; also turning it on for a pybind module compilation here avoids potential warnings or issues from having
-  # mixed hidden/non-hidden types.
+  # properly, and for some features (e.g. py::module_local).  We force it on everything inside the `pybind11` namespace;
+  # also turning it on for a pybind module compilation here avoids potential warnings or issues from having mixed
+  # hidden/non-hidden types.
   if(NOT DEFINED CMAKE_CXX_VISIBILITY_PRESET)
     set_target_properties(${target_name} PROPERTIES CXX_VISIBILITY_PRESET "hidden")
   endif()
@@ -121,11 +121,7 @@ macro(dxt_add_make_dependent_bindings)
     dune_module_path(MODULE ${_mod} RESULT ${_mod}_binary_dir BUILD_DIR)
     set(tdir ${${_mod}_binary_dir})
     if(IS_DIRECTORY ${tdir})
-      add_custom_target(${_mod}_bindings
-                        COMMAND ${CMAKE_COMMAND}
-                                --build ${tdir}
-                                --target bindings_no_ext
-                                -- -j1)
+      add_custom_target(${_mod}_bindings COMMAND ${CMAKE_COMMAND} --build ${tdir} --target bindings_no_ext -- -j1)
       add_dependencies(dependent_bindings ${_mod}_bindings)
     endif()
   endforeach()
diff --git a/cmake/modules/DuneUtils.cmake b/cmake/modules/DuneUtils.cmake
index 197f97180705254770611023065241eb34e624f4..60ead286a7822eef2efbe625a9b4260f574f63c1 100644
--- a/cmake/modules/DuneUtils.cmake
+++ b/cmake/modules/DuneUtils.cmake
@@ -22,7 +22,9 @@ function(TO_LIST_SPACES _LIST_NAME OUTPUT_VAR)
   foreach(ITEM ${${_LIST_NAME}})
     set(NEW_LIST_SPACE ${NEW_LIST_SPACE} ${ITEM})
   endforeach()
-  set(${OUTPUT_VAR} "${NEW_LIST_SPACE}" PARENT_SCOPE)
+  set(${OUTPUT_VAR}
+      "${NEW_LIST_SPACE}"
+      PARENT_SCOPE)
 endfunction()
 
 if(DEFINED dune-xt_DIR)
@@ -41,24 +43,28 @@ enable_testing()
 include(DuneXTTesting)
 
 macro(add_header_listing) # header
-  file(GLOB_RECURSE current_module_header
-                    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hh"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.pbh"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hxx"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hh"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.pbh"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hxx")
+  file(
+    GLOB_RECURSE
+    current_module_header
+    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hh"
+    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.pbh"
+    "${CMAKE_CURRENT_SOURCE_DIR}/dune/*.hxx"
+    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hh"
+    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.pbh"
+    "${CMAKE_CURRENT_SOURCE_DIR}/python/*.hxx")
   set(COMMON_HEADER ${current_module_header} ${DUNE_HEADERS})
 
   # add header of dependent modules for header listing
   foreach(_mod ${ALL_DEPENDENCIES})
-    file(GLOB_RECURSE HEADER_LIST
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hh"
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.pbh"
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hxx"
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hh"
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.pbh"
-                      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hxx")
+    file(
+      GLOB_RECURSE
+      HEADER_LIST
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hh"
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.pbh"
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/dune/*.hxx"
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hh"
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.pbh"
+      "${CMAKE_CURRENT_SOURCE_DIR}/../${_mod}/python/*.hxx")
     list(APPEND COMMON_HEADER ${HEADER_LIST})
   endforeach(_mod DEPENDENCIES)
   set_source_files_properties(${COMMON_HEADER} PROPERTIES HEADER_FILE_ONLY 1)
@@ -78,48 +84,30 @@ endmacro(make_dependent_modules_sys_included)
 macro(add_pylicense)
   file(GLOB configs ${PROJECT_SOURCE_DIR}/.pylicense*.py)
   foreach(cfg ${configs})
-    string(REGEX
-           REPLACE ".*/([^/]*)"
-                   "\\1"
-                   cfg_target
-                   ${cfg})
-    string(REPLACE ${PROJECT_SOURCE_DIR}
-                   ""
-                   cfg_target
-                   ${cfg_target})
-    string(REGEX
-           REPLACE "(.*)/[^/]*"
-                   "\\1"
-                   cfg_target
-                   ${cfg_target})
-    string(REGEX
-           REPLACE "/"
-                   "_"
-                   cfg_target
-                   ${cfg_target})
+    string(REGEX REPLACE ".*/([^/]*)" "\\1" cfg_target ${cfg})
+    string(REPLACE ${PROJECT_SOURCE_DIR} "" cfg_target ${cfg_target})
+    string(REGEX REPLACE "(.*)/[^/]*" "\\1" cfg_target ${cfg_target})
+    string(REGEX REPLACE "/" "_" cfg_target ${cfg_target})
     list(APPEND cfg_targets ${cfg_target})
-    add_custom_target(${cfg_target}
-                      ${CMAKE_BINARY_DIR}/run-in-dune-env
-                      pylicense
-                      "--cfg=${cfg}"
-                      "${PROJECT_SOURCE_DIR}"
-                      VERBATIM
-                      USES_TERMINAL)
+    add_custom_target(
+      ${cfg_target}
+      ${CMAKE_BINARY_DIR}/run-in-dune-env pylicense "--cfg=${cfg}" "${PROJECT_SOURCE_DIR}"
+      VERBATIM USES_TERMINAL)
   endforeach(cfg ${configs})
   add_custom_target(license DEPENDS ${cfg_targets})
 endmacro(add_pylicense)
 
 function(dump_cmake_variables)
-    get_cmake_property(_variableNames VARIABLES)
-    list (SORT _variableNames)
-    foreach (_variableName ${_variableNames})
-        if (ARGV0)
-            unset(MATCHED)
-            string(REGEX MATCH ${ARGV0} MATCHED ${_variableName})
-            if (NOT MATCHED)
-                continue()
-            endif()
-        endif()
-        message(STATUS "${_variableName}=${${_variableName}}")
-    endforeach()
+  get_cmake_property(_variableNames VARIABLES)
+  list(SORT _variableNames)
+  foreach(_variableName ${_variableNames})
+    if(ARGV0)
+      unset(MATCHED)
+      string(REGEX MATCH ${ARGV0} MATCHED ${_variableName})
+      if(NOT MATCHED)
+        continue()
+      endif()
+    endif()
+    message(STATUS "${_variableName}=${${_variableName}}")
+  endforeach()
 endfunction()
diff --git a/cmake/modules/DuneXTTesting.cmake b/cmake/modules/DuneXTTesting.cmake
index 57a0e4caa5abb06646f85e1ed1bc73d13ba4215c..fab1dd992d67336baaa18b6adcded6a797babd17 100644
--- a/cmake/modules/DuneXTTesting.cmake
+++ b/cmake/modules/DuneXTTesting.cmake
@@ -13,25 +13,10 @@
 # ~~~
 
 macro(dxt_headercheck_target_name arg)
-  string(REGEX
-         REPLACE ".*/([^/]*)"
-                 "\\1"
-                 simple
-                 ${arg})
-  string(REPLACE ${PROJECT_SOURCE_DIR}
-                 ""
-                 rel
-                 ${arg})
-  string(REGEX
-         REPLACE "(.*)/[^/]*"
-                 "\\1"
-                 relpath
-                 ${rel})
-  string(REGEX
-         REPLACE "/"
-                 "_"
-                 targname
-                 ${rel})
+  string(REGEX REPLACE ".*/([^/]*)" "\\1" simple ${arg})
+  string(REPLACE ${PROJECT_SOURCE_DIR} "" rel ${arg})
+  string(REGEX REPLACE "(.*)/[^/]*" "\\1" relpath ${rel})
+  string(REGEX REPLACE "/" "_" targname ${rel})
   set(targname "headercheck_${targname}")
 endmacro(dxt_headercheck_target_name)
 
@@ -40,10 +25,8 @@ macro(get_headercheck_targets subdir)
   list(APPEND dxt_ignore_header ${bindir_header})
 
   if(ENABLE_HEADERCHECK)
-    file(GLOB_RECURSE headerlist
-                      "${CMAKE_SOURCE_DIR}/dune/xt/${subdir}/*.hh"
-                      "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh"
-                      "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh")
+    file(GLOB_RECURSE headerlist "${CMAKE_SOURCE_DIR}/dune/xt/${subdir}/*.hh"
+         "${CMAKE_SOURCE_DIR}/dune/xt/test/${subdir}/*.hh" "${CMAKE_SOURCE_DIR}/python/dune/xt/${subdir}/*.hh")
     add_custom_target(${subdir}_headercheck)
     foreach(header ${headerlist})
       list(FIND dxt_ignore_header "${header}" _index)
@@ -68,26 +51,24 @@ macro(add_subdir_tests subdir)
       list(APPEND ranks ${DUNE_MAX_TEST_CORES})
     endif(source MATCHES "mpi")
     get_filename_component(testbase ${source} NAME_WE)
-    string(REPLACE ".cc"
-                   ".mini"
-                   minifile
-                   ${source})
+    string(REPLACE ".cc" ".mini" minifile ${source})
     if(EXISTS ${minifile})
       if(dune-testtools_FOUND)
-        dune_add_system_test(SOURCE
-                             ${source}
-                             ${COMMON_HEADER}
-                             INIFILE
-                             ${minifile}
-                             BASENAME
-                             test_${testbase}
-                             CREATED_TARGETS
-                             targetlist_${testbase}
-                             ADDED_TESTS
-                             testlist_${testbase}
-                             SCRIPT
-                             dune_xt_execute.py
-                             ${DEBUG_MACRO_TESTS})
+        dune_add_system_test(
+          SOURCE
+          ${source}
+          ${COMMON_HEADER}
+          INIFILE
+          ${minifile}
+          BASENAME
+          test_${testbase}
+          CREATED_TARGETS
+          targetlist_${testbase}
+          ADDED_TESTS
+          testlist_${testbase}
+          SCRIPT
+          dune_xt_execute.py
+          ${DEBUG_MACRO_TESTS})
         foreach(target ${targetlist_${testbase}})
           target_link_libraries(${target} ${link_xt_libs} ${COMMON_LIBS} ${GRID_LIBS} gtest_dune_xt)
           list(APPEND ${subdir}_dxt_test_binaries ${target})
@@ -101,25 +82,26 @@ macro(add_subdir_tests subdir)
       endif(dune-testtools_FOUND)
     else(EXISTS ${minifile})
       set(target test_${testbase})
-      dune_add_test(NAME
-                    ${target}
-                    SOURCES
-                    ${source}
-                    ${COMMON_HEADER}
-                    LINK_LIBRARIES
-                    ${link_xt_libs}
-                    ${COMMON_LIBS}
-                    ${GRID_LIBS}
-                    gtest_dune_xt
-                    COMMAND
-                    ${CMAKE_BINARY_DIR}/run-in-dune-env
-                    CMD_ARGS
-                    ${CMAKE_CURRENT_BINARY_DIR}/${target}
-                    --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml
-                    TIMEOUT
-                    ${DXT_TEST_TIMEOUT}
-                    MPI_RANKS
-                    ${ranks})
+      dune_add_test(
+        NAME
+        ${target}
+        SOURCES
+        ${source}
+        ${COMMON_HEADER}
+        LINK_LIBRARIES
+        ${link_xt_libs}
+        ${COMMON_LIBS}
+        ${GRID_LIBS}
+        gtest_dune_xt
+        COMMAND
+        ${CMAKE_BINARY_DIR}/run-in-dune-env
+        CMD_ARGS
+        ${CMAKE_CURRENT_BINARY_DIR}/${target}
+        --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml
+        TIMEOUT
+        ${DXT_TEST_TIMEOUT}
+        MPI_RANKS
+        ${ranks})
       list(APPEND ${subdir}_dxt_test_binaries ${target})
       set(dxt_test_names_${target} ${target})
       set_tests_properties(${target} PROPERTIES LABELS ${subdir})
@@ -132,18 +114,9 @@ macro(add_subdir_tests subdir)
       list(APPEND ranks ${DUNE_MAX_TEST_CORES})
     endif(template MATCHES "mpi")
     get_filename_component(testbase ${template} NAME_WE)
-    string(REPLACE ".tpl"
-                   ".py"
-                   config_fn
-                   "${template}")
-    string(REPLACE ".tpl"
-                   ".tpl.cc"
-                   out_fn
-                   "${template}")
-    string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}"
-                   "${CMAKE_CURRENT_BINARY_DIR}"
-                   out_fn
-                   "${out_fn}")
+    string(REPLACE ".tpl" ".py" config_fn "${template}")
+    string(REPLACE ".tpl" ".tpl.cc" out_fn "${template}")
+    string(REPLACE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_BINARY_DIR}" out_fn "${out_fn}")
     # get the last completed cache for the codegen execution during configure time
     foreach(_mod ${ALL_DEPENDENCIES})
       dune_module_path(MODULE ${_mod} RESULT ${_mod}_binary_dir BUILD_DIR)
@@ -152,62 +125,56 @@ macro(add_subdir_tests subdir)
       endif()
     endforeach(_mod DEPENDENCIES)
 
-    dune_execute_process(COMMAND
-                         ${CMAKE_BINARY_DIR}/run-in-dune-env
-                         dxt_code_generation.py
-                         "${config_fn}"
-                         "${template}"
-                         "${CMAKE_BINARY_DIR}"
-                         "${out_fn}"
-                         "${last_dep_bindir}"
-                         OUTPUT_VARIABLE
-                         codegen_output)
+    dune_execute_process(
+      COMMAND
+      ${CMAKE_BINARY_DIR}/run-in-dune-env
+      dxt_code_generation.py
+      "${config_fn}"
+      "${template}"
+      "${CMAKE_BINARY_DIR}"
+      "${out_fn}"
+      "${last_dep_bindir}"
+      OUTPUT_VARIABLE
+      codegen_output)
     file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/codegen.${testbase}.log" ${codegen_output})
     file(GLOB generated_sources "${out_fn}.*")
     if("" STREQUAL "${generated_sources}")
       set(generated_sources ${out_fn})
     endif()
-    add_custom_command(OUTPUT "${generated_sources}"
-                       COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py "${config_fn}" "${template}"
-                               "${CMAKE_BINARY_DIR}" "${out_fn}" "${last_dep_bindir}"
-                       DEPENDS "${config_fn}" "${template}"
-                       VERBATIM USES_TERMINAL)
+    add_custom_command(
+      OUTPUT "${generated_sources}"
+      COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env dxt_code_generation.py "${config_fn}" "${template}"
+              "${CMAKE_BINARY_DIR}" "${out_fn}" "${last_dep_bindir}"
+      DEPENDS "${config_fn}" "${template}"
+      VERBATIM USES_TERMINAL)
     foreach(gen_source ${generated_sources})
-      string(REPLACE "${out_fn}."
-                     ""
-                     postfix
-                     "${gen_source}")
-      string(REPLACE "${out_fn}"
-                     ""
-                     postfix
-                     "${postfix}")
-      string(REPLACE ".cc"
-                     ""
-                     postfix
-                     "${postfix}")
+      string(REPLACE "${out_fn}." "" postfix "${gen_source}")
+      string(REPLACE "${out_fn}" "" postfix "${postfix}")
+      string(REPLACE ".cc" "" postfix "${postfix}")
       if(NOT "" STREQUAL "${postfix}")
         set(postfix "__${postfix}")
       endif()
       set(target test_${testbase}${postfix})
-      dune_add_test(NAME
-                    ${target}
-                    SOURCES
-                    ${gen_source}
-                    ${COMMON_HEADER}
-                    LINK_LIBRARIES
-                    ${link_xt_libs}
-                    ${COMMON_LIBS}
-                    ${GRID_LIBS}
-                    gtest_dune_xt
-                    COMMAND
-                    ${CMAKE_BINARY_DIR}/run-in-dune-env
-                    CMD_ARGS
-                    ${CMAKE_CURRENT_BINARY_DIR}/${target}
-                    --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml
-                    TIMEOUT
-                    ${DXT_TEST_TIMEOUT}
-                    MPI_RANKS
-                    ${ranks})
+      dune_add_test(
+        NAME
+        ${target}
+        SOURCES
+        ${gen_source}
+        ${COMMON_HEADER}
+        LINK_LIBRARIES
+        ${link_xt_libs}
+        ${COMMON_LIBS}
+        ${GRID_LIBS}
+        gtest_dune_xt
+        COMMAND
+        ${CMAKE_BINARY_DIR}/run-in-dune-env
+        CMD_ARGS
+        ${CMAKE_CURRENT_BINARY_DIR}/${target}
+        --gtest_output=xml:${CMAKE_CURRENT_BINARY_DIR}/${target}.xml
+        TIMEOUT
+        ${DXT_TEST_TIMEOUT}
+        MPI_RANKS
+        ${ranks})
       list(APPEND ${subdir}_dxt_test_binaries ${target})
       set(dxt_test_names_${target} ${target})
       set_tests_properties(${target} PROPERTIES LABELS ${subdir})
@@ -225,78 +192,25 @@ macro(add_subdir_tests subdir)
 
   add_custom_target(${subdir}_test_binaries DEPENDS ${${subdir}_dxt_test_binaries}) # add_dependencies(test
                                                                                     # test_binaries)
-  add_custom_target(${subdir}_check
-                    COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j ${DXT_TEST_PROCS}
-                    DEPENDS ${subdir}_test_binaries USES_TERMINAL)
-  add_custom_target(${subdir}_recheck
-                    COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed -j ${DXT_TEST_PROCS}
-                    DEPENDS ${subdir}_test_binaries USES_TERMINAL)
+  add_custom_target(
+    ${subdir}_check
+    COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} -j ${DXT_TEST_PROCS}
+    DEPENDS ${subdir}_test_binaries
+    USES_TERMINAL)
+  add_custom_target(
+    ${subdir}_recheck
+    COMMAND ${CMAKE_CTEST_COMMAND} --timeout ${DXT_TEST_TIMEOUT} --rerun-failed -j ${DXT_TEST_PROCS}
+    DEPENDS ${subdir}_test_binaries
+    USES_TERMINAL)
   foreach(target ${${subdir}_dxt_test_binaries})
     set(all_sorted_testnames "${all_sorted_testnames}/${dxt_test_names_${target}}")
   endforeach()
   set(${subdir}_dxt_headercheck_targets "")
   get_headercheck_targets(${subdir})
-  configure_file(${dune-xt-module-path}/dxt_test_binaries.cmake.in
-                 ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_test_binaries.cmake)
-  configure_file(${dune-xt-module-path}/dxt_all_sorted_testnames.cmake.in
-                 ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_all_sorted_testnames.cmake)
-  configure_file(${dune-xt-module-path}/dxt_headercheck_targets.cmake.in
-                 ${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_headercheck_targets.cmake)
-  # we use a scatter/gather setup so this still goes thru (with no new/removed tests) on CI where SRC is mounted ro
-  add_custom_target(${subdir}_scatter_pickles_compile
-                    COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_compiles_totals.pickle"
-                            "${CMAKE_BINARY_DIR}/${subdir}_compiles_totals.pickle")
-  add_custom_target(${subdir}_scatter_pickles_run
-                    COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_testruns_totals.pickle"
-                            "${CMAKE_BINARY_DIR}/${subdir}_testruns_totals.pickle")
-  add_custom_target(${subdir}_rerun_test_distribution
-                    ${CMAKE_BINARY_DIR}/run-in-dune-env
-                    distribute_testing.py
-                    "${CMAKE_BINARY_DIR}"
-                    "${CMAKE_CURRENT_SOURCE_DIR}"
-                    "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_test_binaries.cmake"
-                    "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_all_sorted_testnames.cmake"
-                    "${CMAKE_CURRENT_BINARY_DIR}/${subdir}_dxt_headercheck_targets.cmake"
-                    "${DXT_BIN_COUNT}"
-                    VERBATIM
-                    USES_TERMINAL
-                    DEPENDS scatter_pickles_compile scatter_pickles_run)
-  add_custom_target(${subdir}_copy_builders_if_different
-                    COMMAND ${CMAKE_COMMAND} -E copy_if_different
-                            "${CMAKE_BINARY_DIR}/${subdir}_builder_definitions.cmake"
-                            "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_builder_definitions.cmake")
-  add_custom_target(${subdir}_gather_pickles_compile
-                    COMMAND ${CMAKE_COMMAND} -E copy_if_different
-                            "${CMAKE_BINARY_DIR}/${subdir}_compiles_totals.pickle"
-                            "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_compiles_totals.pickle"
-                    DEPENDS rerun_test_distribution)
-  add_custom_target(${subdir}_gather_pickles_run
-                    COMMAND ${CMAKE_COMMAND} -E copy_if_different
-                            "${CMAKE_BINARY_DIR}/${subdir}_testruns_totals.pickle"
-                            "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}_testruns_totals.pickle"
-                    DEPENDS rerun_test_distribution)
-
-  add_custom_target(${subdir}_refresh_test_timings)
-  add_dependencies(${subdir}_copy_builders_if_different ${subdir}_rerun_test_distribution)
-  add_dependencies(${subdir}_refresh_test_timings
-                   ${subdir}_copy_builders_if_different
-                   ${subdir}_gather_pickles_compile
-                   ${subdir}_gather_pickles_run)
 endmacro(add_subdir_tests)
 
 macro(finalize_test_setup)
-  set(combine_targets
-      test_templates
-      test_binaries
-      check
-      recheck
-      scatter_pickles_compile
-      scatter_pickles_run
-      rerun_test_distribution
-      copy_builders_if_different
-      gather_pickles_compile
-      gather_pickles_run
-      refresh_test_timings)
+  set(combine_targets test_templates test_binaries check recheck)
   foreach(target ${combine_targets})
     add_custom_target(${target})
     foreach(subdir ${dxt_test_dirs})
@@ -332,11 +246,7 @@ endmacro()
 
 macro(dxt_exclude_from_headercheck)
   exclude_from_headercheck(${ARGV0}) # make this robust to argument being passed with or without ""
-  string(REGEX
-         REPLACE "[\ \n]+([^\ ])"
-                 ";\\1"
-                 list
-                 ${ARGV0})
+  string(REGEX REPLACE "[\ \n]+([^\ ])" ";\\1" list ${ARGV0})
   set(list "${list};${ARGV}")
   foreach(item ${list})
     set(item ${CMAKE_CURRENT_SOURCE_DIR}/${item})
@@ -345,16 +255,13 @@ macro(dxt_exclude_from_headercheck)
 endmacro(dxt_exclude_from_headercheck)
 
 macro(dxt_add_python_tests)
-  add_custom_target(xt_test_python
-                    "${CMAKE_BINARY_DIR}/run-in-dune-env"
-                    "py.test"
-                    "${CMAKE_BINARY_DIR}/python"
-                    "--cov"
-                    "${CMAKE_CURRENT_SOURCE_DIR}/"
-                    "--junitxml=pytest_results.xml"
-                    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python"
-                    DEPENDS bindings
-                    VERBATIM USES_TERMINAL)
+  add_custom_target(
+    xt_test_python
+    "${CMAKE_BINARY_DIR}/run-in-dune-env" "py.test" "${CMAKE_BINARY_DIR}/python" "--cov" "${CMAKE_CURRENT_SOURCE_DIR}/"
+    "--junitxml=pytest_results.xml"
+    WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/python"
+    DEPENDS bindings
+    VERBATIM USES_TERMINAL)
   if(NOT TARGET test_python)
     add_custom_target(test_python)
   endif(TARGET test_python)
diff --git a/cmake/modules/DuneXtMacros.cmake b/cmake/modules/DuneXtMacros.cmake
index 70635b0ce9f3eafd32526052d3b09da5b0006d15..5c33f8fa19c5fd0063f49e9ae38b963f0ff619f2 100644
--- a/cmake/modules/DuneXtMacros.cmake
+++ b/cmake/modules/DuneXtMacros.cmake
@@ -23,17 +23,31 @@ include(XtCompilerSupport)
 include(XtTooling)
 include(Hints)
 
-set(DXT_DONT_LINK_PYTHON_LIB ${DXT_DONT_LINK_PYTHON_LIB} CACHE STRING "wheelbuilders want to set this to 1")
+set(DXT_DONT_LINK_PYTHON_LIB
+    ${DXT_DONT_LINK_PYTHON_LIB}
+    CACHE STRING "wheelbuilders want to set this to 1")
 
 # library checks  #########################################################################
 find_package(PkgConfig)
 
-set(DS_REQUIRED_BOOST_LIBS atomic chrono date_time filesystem system thread timer)
+set(DS_REQUIRED_BOOST_LIBS
+    atomic
+    chrono
+    date_time
+    filesystem
+    system
+    thread
+    timer)
 set(BOOST_ROOT_HINTS "$ENV{BOOST_ROOT}" ${root_hints})
 # check if any hints are provided by user
-if(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR)
+if(DEFINED BOOST_ROOT
+   OR DEFINED BOOOST_INCLUDEDIR
+   OR DEFINED BOOST_LIBRARYDIR)
   find_package(Boost 1.48.0 REQUIRED COMPONENTS ${DS_REQUIRED_BOOST_LIBS})
-else(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR)
+else(
+  DEFINED BOOST_ROOT
+  OR DEFINED BOOOST_INCLUDEDIR
+  OR DEFINED BOOST_LIBRARYDIR)
   # FindBoost can only take a single hint directory from BOOST_ROOT, so we loop over all hints
   foreach(BOOST_ROOT_HINT ${BOOST_ROOT_HINTS})
     set(BOOST_ROOT ${BOOST_ROOT_HINT})
@@ -44,7 +58,10 @@ else(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR
   endforeach(BOOST_ROOT_HINT ${BOOST_ROOT_HINTS})
   # check for Boost again with REQUIRED keyword to make boost mandatory
   find_package(Boost 1.48.0 REQUIRED COMPONENTS ${DS_REQUIRED_BOOST_LIBS})
-endif(DEFINED BOOST_ROOT OR DEFINED BOOOST_INCLUDEDIR OR DEFINED BOOST_LIBRARYDIR)
+endif(
+  DEFINED BOOST_ROOT
+  OR DEFINED BOOOST_INCLUDEDIR
+  OR DEFINED BOOST_LIBRARYDIR)
 if(${Boost_INCLUDE_DIRS})
   dune_register_package_flags(INCLUDE_DIRS ${Boost_INCLUDE_DIRS})
 endif(${Boost_INCLUDE_DIRS})
@@ -98,9 +115,10 @@ if(HAVE_MPI)
   if(MPI4PY_FOUND)
 
   else()
-    execute_process(COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env pip install mpi4py
-                    ERROR_VARIABLE shell_error
-                    OUTPUT_STRIP_TRAILING_WHITESPACE)
+    execute_process(
+      COMMAND ${CMAKE_BINARY_DIR}/run-in-dune-env pip install mpi4py
+      ERROR_VARIABLE shell_error
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
     myfind_mpi4py()
   endif()
   if(MPI4PY_FOUND)
@@ -119,12 +137,18 @@ endif()
 set(CMAKE_EXPORT_COMPILE_COMMANDS "ON")
 set(DS_MAX_MIC_THREADS CACHE INTEGER 120)
 set(DUNE_XT_COMMON_TEST_DIR ${dune-xt_SOURCE_DIR}/dune/xt/common/test)
-set(ENABLE_PERFMON 0 CACHE STRING "enable likwid performance monitoring API usage")
+set(ENABLE_PERFMON
+    0
+    CACHE STRING "enable likwid performance monitoring API usage")
 if(NOT DS_HEADERCHECK_DISABLE)
   set(ENABLE_HEADERCHECK 1)
 endif(NOT DS_HEADERCHECK_DISABLE)
-set(DXT_TEST_TIMEOUT 180 CACHE STRING "per-test timeout in seconds")
-set(DXT_TEST_PROCS 1 CACHE STRING "run N tests in parallel")
+set(DXT_TEST_TIMEOUT
+    180
+    CACHE STRING "per-test timeout in seconds")
+set(DXT_TEST_PROCS
+    1
+    CACHE STRING "run N tests in parallel")
 
 set(DUNE_GRID_EXPERIMENTAL_GRID_EXTENSIONS TRUE)
 
diff --git a/cmake/modules/DuneXtVersionHelper.cmake b/cmake/modules/DuneXtVersionHelper.cmake
index 05d90ff9f08e7819415fbecee487189a12090ad8..5caec6ed5d6928a9547e9ad8aa13a247066f1740 100644
--- a/cmake/modules/DuneXtVersionHelper.cmake
+++ b/cmake/modules/DuneXtVersionHelper.cmake
@@ -1,59 +1,57 @@
 macro(dune_xt_module_version_from_git TARGET_MODULE)
 
-    dune_module_to_uppercase(TARGET_MODULE_UPPER ${TARGET_MODULE})
+  dune_module_to_uppercase(TARGET_MODULE_UPPER ${TARGET_MODULE})
 
-    if(dune-xt_MODULE_PATH)
-      set(VERSIONEER_DIR ${dune-xt_MODULE_PATH})
-    else()
-      set(VERSIONEER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
-    endif()
+  if(dune-xt_MODULE_PATH)
+    set(VERSIONEER_DIR ${dune-xt_MODULE_PATH})
+  else()
+    set(VERSIONEER_DIR ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
+  endif()
 
-    if(${TARGET_MODULE}_SOURCE_DIR)
-        # the "self" case
-        set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_SOURCE_DIR})
-    else()
-        # the "other module" case
-        set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_PPREFIX})
-    endif()
+  if(${TARGET_MODULE}_SOURCE_DIR)
+    # the "self" case
+    set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_SOURCE_DIR})
+  else()
+    # the "other module" case
+    set(_MODULE_SOURCE_DIR ${${TARGET_MODULE}_PPREFIX})
+  endif()
 
-    execute_process(COMMAND
-        ${PYTHON_EXECUTABLE}
-            ${VERSIONEER_DIR}/versioneer.py
-            ${_MODULE_SOURCE_DIR}
-                    WORKING_DIRECTORY ${_MODULE_SOURCE_DIR}
-                    OUTPUT_VARIABLE GIT_DESCRIBE_VERSION
-                    ERROR_VARIABLE GIT_DESCRIBE_ERROR
-                    RESULT_VARIABLE GIT_DESCRIBE_ERROR_CODE
-                    OUTPUT_STRIP_TRAILING_WHITESPACE
-                    )
-    if(GIT_DESCRIBE_ERROR_CODE)
-      message(FATAL_ERROR "Extracting version information failed: ${GIT_DESCRIBE_ERROR}")
-    endif()
+  execute_process(
+    COMMAND ${PYTHON_EXECUTABLE} ${VERSIONEER_DIR}/versioneer.py ${_MODULE_SOURCE_DIR}
+    WORKING_DIRECTORY ${_MODULE_SOURCE_DIR}
+    OUTPUT_VARIABLE GIT_DESCRIBE_VERSION
+    ERROR_VARIABLE GIT_DESCRIBE_ERROR
+    RESULT_VARIABLE GIT_DESCRIBE_ERROR_CODE
+    OUTPUT_STRIP_TRAILING_WHITESPACE)
+  if(GIT_DESCRIBE_ERROR_CODE)
+    message(FATAL_ERROR "Extracting version information failed: ${GIT_DESCRIBE_ERROR}")
+  endif()
 
-    foreach(_MOD_VAR ${TARGET_MODULE} ${TARGET_MODULE_UPPER})
-        set(${_MOD_VAR}_VERSION ${GIT_DESCRIBE_VERSION})
-        # Reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_module_information
-        extract_major_minor_version("${GIT_DESCRIBE_VERSION}" DUNE_VERSION)
-        set(${_MOD_VAR}_VERSION_MAJOR    "${DUNE_VERSION_MAJOR}")
-        set(${_MOD_VAR}_VERSION_MINOR    "${DUNE_VERSION_MINOR}")
-        set(${_MOD_VAR}_VERSION_REVISION "${DUNE_VERSION_REVISION}")
-    endforeach(_MOD_VAR)
-    set(CPACK_PACKAGE_NAME "${DUNE_MOD_NAME}")
-    set(CPACK_PACKAGE_VERSION "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}")
-    set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
-    set(CPACK_SOURCE_IGNORE_FILES "${CMAKE_BINARY_DIR}" "\\\\.svn" "\\\\.git" ".*/*\\\\.gitignore")
+  foreach(_MOD_VAR ${TARGET_MODULE} ${TARGET_MODULE_UPPER})
+    set(${_MOD_VAR}_VERSION ${GIT_DESCRIBE_VERSION})
+    # Reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_module_information
+    extract_major_minor_version("${GIT_DESCRIBE_VERSION}" DUNE_VERSION)
+    set(${_MOD_VAR}_VERSION_MAJOR "${DUNE_VERSION_MAJOR}")
+    set(${_MOD_VAR}_VERSION_MINOR "${DUNE_VERSION_MINOR}")
+    set(${_MOD_VAR}_VERSION_REVISION "${DUNE_VERSION_REVISION}")
+  endforeach(_MOD_VAR)
+  set(CPACK_PACKAGE_NAME "${DUNE_MOD_NAME}")
+  set(CPACK_PACKAGE_VERSION "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}")
+  set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
+  set(CPACK_SOURCE_IGNORE_FILES "${CMAKE_BINARY_DIR}" "\\\\.svn" "\\\\.git" ".*/*\\\\.gitignore")
 
-    # reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_project
-    set(ProjectVersion         "${GIT_DESCRIBE_VERSION}")
-    set(ProjectVersionString   "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}")
-    set(ProjectVersionMajor    "${DUNE_VERSION_MAJOR}")
-    set(ProjectVersionMinor    "${DUNE_VERSION_MINOR}")
-    set(ProjectVersionRevision "${DUNE_VERSION_REVISION}")
+  # reset variables from dune-common/cmake/modules/DuneMacros.cmake:dune_project
+  set(ProjectVersion "${GIT_DESCRIBE_VERSION}")
+  set(ProjectVersionString "${DUNE_VERSION_MAJOR}.${DUNE_VERSION_MINOR}.${DUNE_VERSION_REVISION}")
+  set(ProjectVersionMajor "${DUNE_VERSION_MAJOR}")
+  set(ProjectVersionMinor "${DUNE_VERSION_MINOR}")
+  set(ProjectVersionRevision "${DUNE_VERSION_REVISION}")
 
-    # need to re-run template insertion
-    if(NOT EXISTS ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in)
-      file(WRITE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in
-  "set(PACKAGE_VERSION \"${ProjectVersionString}\")
+  # need to re-run template insertion
+  if(NOT EXISTS ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in)
+    file(
+      WRITE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in
+      "set(PACKAGE_VERSION \"${ProjectVersionString}\")
 
   if(\"\${PACKAGE_FIND_VERSION_MAJOR}\" EQUAL \"${ProjectVersionMajor}\" AND
        \"\${PACKAGE_FIND_VERSION_MINOR}\" EQUAL \"${ProjectVersionMinor}\")
@@ -63,13 +61,10 @@ macro(dune_xt_module_version_from_git TARGET_MODULE)
     endif()
   endif()
   ")
-      set(CONFIG_VERSION_FILE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in)
-    else()
-      set(CONFIG_VERSION_FILE ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in)
-    endif()
-    configure_file(
-      ${CONFIG_VERSION_FILE}
-      ${PROJECT_BINARY_DIR}/${ProjectName}-config-version.cmake @ONLY)
+    set(CONFIG_VERSION_FILE ${PROJECT_BINARY_DIR}/CMakeFiles/${ProjectName}-config-version.cmake.in)
+  else()
+    set(CONFIG_VERSION_FILE ${PROJECT_SOURCE_DIR}/${ProjectName}-config-version.cmake.in)
+  endif()
+  configure_file(${CONFIG_VERSION_FILE} ${PROJECT_BINARY_DIR}/${ProjectName}-config-version.cmake @ONLY)
 
 endmacro(dune_xt_module_version_from_git)
-
diff --git a/cmake/modules/FindEigen3.cmake b/cmake/modules/FindEigen3.cmake
index e98dacdd21e30c8f992f23b1cfcabecbd8ee932a..882dfca4abc398c39f0af88cea7503ca95828554 100644
--- a/cmake/modules/FindEigen3.cmake
+++ b/cmake/modules/FindEigen3.cmake
@@ -32,19 +32,13 @@ endif(NOT Eigen3_FIND_VERSION)
 macro(_eigen3_check_version)
   file(READ "${EIGEN3_INCLUDE_DIR}/Eigen/src/Core/util/Macros.h" _eigen3_version_header)
 
-  string(REGEX MATCH
-               "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)"
-               _eigen3_world_version_match
+  string(REGEX MATCH "define[ \t]+EIGEN_WORLD_VERSION[ \t]+([0-9]+)" _eigen3_world_version_match
                "${_eigen3_version_header}")
   set(EIGEN3_WORLD_VERSION "${CMAKE_MATCH_1}")
-  string(REGEX MATCH
-               "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)"
-               _eigen3_major_version_match
+  string(REGEX MATCH "define[ \t]+EIGEN_MAJOR_VERSION[ \t]+([0-9]+)" _eigen3_major_version_match
                "${_eigen3_version_header}")
   set(EIGEN3_MAJOR_VERSION "${CMAKE_MATCH_1}")
-  string(REGEX MATCH
-               "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)"
-               _eigen3_minor_version_match
+  string(REGEX MATCH "define[ \t]+EIGEN_MINOR_VERSION[ \t]+([0-9]+)" _eigen3_minor_version_match
                "${_eigen3_version_header}")
   set(EIGEN3_MINOR_VERSION "${CMAKE_MATCH_1}")
 
@@ -70,10 +64,11 @@ if(EIGEN3_INCLUDE_DIR)
 
 else(EIGEN3_INCLUDE_DIR)
 
-  find_path(EIGEN3_INCLUDE_DIR
-            NAMES signature_of_eigen3_matrix_library
-            PATHS ${CMAKE_INSTALL_PREFIX}/include ${KDE4_INCLUDE_DIR} ${include_hints}
-            PATH_SUFFIXES eigen3 eigen)
+  find_path(
+    EIGEN3_INCLUDE_DIR
+    NAMES signature_of_eigen3_matrix_library
+    PATHS ${CMAKE_INSTALL_PREFIX}/include ${KDE4_INCLUDE_DIR} ${include_hints}
+    PATH_SUFFIXES eigen3 eigen)
 
   if(EIGEN3_INCLUDE_DIR)
     _eigen3_check_version()
diff --git a/cmake/modules/FindFASP.cmake b/cmake/modules/FindFASP.cmake
index 30195231720b6055eaa2dc4662f84a338e64e0cf..2ca9862272e2759795eb732cb7c74c3ac06b9895 100644
--- a/cmake/modules/FindFASP.cmake
+++ b/cmake/modules/FindFASP.cmake
@@ -20,8 +20,8 @@ else("${FASP_LIBRARY}" MATCHES "FASP_LIBRARY-NOTFOUND")
   set(FASPLIB "${FASP_LIBRARY}")
 endif("${FASP_LIBRARY}" MATCHES "FASP_LIBRARY-NOTFOUND")
 message("-- checking for 'fasp' header")
-find_path(FASP_INCLUDE_DIR fasp.h
-          HINTS "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/" "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/fasp/")
+find_path(FASP_INCLUDE_DIR fasp.h HINTS "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/"
+                                        "${CMAKE_CURRENT_SOURCE_DIR}/../local/include/fasp/")
 if("${FASP_INCLUDE_DIR}" MATCHES "FASP_INCLUDE_DIR-NOTFOUND")
   message("--   'fasp' header not found")
 else("${FASP_INCLUDE_DIR}" MATCHES "FASP_INCLUDE_DIR-NOTFOUND")
diff --git a/cmake/modules/FindLIKWID.cmake b/cmake/modules/FindLIKWID.cmake
index d1355092123a21363f1d3dda2a9879c3eb92e6d2..773a04de1173f103341d00c09e7477c1876f60ce 100644
--- a/cmake/modules/FindLIKWID.cmake
+++ b/cmake/modules/FindLIKWID.cmake
@@ -11,8 +11,16 @@
 #   Tobias Leibner  (2020)
 # ~~~
 
-find_path(LIKWID_INCLUDE_DIR NAMES likwid.h PATHS ${LIKWID_ROOT} PATH_SUFFIXES include)
-find_library(LIKWID_LIBRARY NAMES likwid PATHS ${LIKWID_ROOT} PATH_SUFFIXES lib)
+find_path(
+  LIKWID_INCLUDE_DIR
+  NAMES likwid.h
+  PATHS ${LIKWID_ROOT}
+  PATH_SUFFIXES include)
+find_library(
+  LIKWID_LIBRARY
+  NAMES likwid
+  PATHS ${LIKWID_ROOT}
+  PATH_SUFFIXES lib)
 
 mark_as_advanced(LIKWID_LIBRARY LIKWID_INCLUDE_DIR)
 
diff --git a/cmake/modules/FindMPI4PY.cmake b/cmake/modules/FindMPI4PY.cmake
index 63dad4547065f0eda99174218a3caace90ce57dd..5eeab332cc94219a74f520f8ee9456af4d907ccf 100644
--- a/cmake/modules/FindMPI4PY.cmake
+++ b/cmake/modules/FindMPI4PY.cmake
@@ -17,15 +17,17 @@
 # 1a660df142e9a
 macro(myfind_mpi4py)
   if(NOT MPI4PY_INCLUDE_DIR)
-    execute_process(COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())"
-                    OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR
-                    RESULT_VARIABLE MPI4PY_COMMAND_RESULT
-                    OUTPUT_STRIP_TRAILING_WHITESPACE)
+    execute_process(
+      COMMAND "${DUNE_PYTHON_VIRTUALENV_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())"
+      OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR
+      RESULT_VARIABLE MPI4PY_COMMAND_RESULT
+      OUTPUT_STRIP_TRAILING_WHITESPACE)
     if(MPI4PY_COMMAND_RESULT)
-      execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())"
-                      OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR
-                      RESULT_VARIABLE MPI4PY_COMMAND_RESULT
-                      OUTPUT_STRIP_TRAILING_WHITESPACE)
+      execute_process(
+        COMMAND "${PYTHON_EXECUTABLE}" "-c" "import mpi4py; print(mpi4py.get_include())"
+        OUTPUT_VARIABLE MPI4PY_INCLUDE_DIR
+        RESULT_VARIABLE MPI4PY_COMMAND_RESULT
+        OUTPUT_STRIP_TRAILING_WHITESPACE)
     endif()
     if(MPI4PY_COMMAND_RESULT)
       message("jfa: mpi4py not found")
@@ -38,7 +40,9 @@ macro(myfind_mpi4py)
       else(MPI4PY_INCLUDE_DIR MATCHES "Traceback")
         # successful
         set(MPI4PY_FOUND TRUE)
-        set(MPI4PY_INCLUDE_DIR ${MPI4PY_INCLUDE_DIR} CACHE STRING "mpi4py include path")
+        set(MPI4PY_INCLUDE_DIR
+            ${MPI4PY_INCLUDE_DIR}
+            CACHE STRING "mpi4py include path")
       endif(MPI4PY_INCLUDE_DIR MATCHES "Traceback")
     endif(MPI4PY_COMMAND_RESULT)
   else(NOT MPI4PY_INCLUDE_DIR)
diff --git a/cmake/modules/FindPythonLibsNew.cmake b/cmake/modules/FindPythonLibsNew.cmake
index de2ffa02c24b2c6589fa58e22e8dcaa364fa54e6..68c79da938802a1ded6bfc71191860d4a578a1d1 100644
--- a/cmake/modules/FindPythonLibsNew.cmake
+++ b/cmake/modules/FindPythonLibsNew.cmake
@@ -35,8 +35,8 @@
 # * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following
 #   disclaimer in the documentation and/or other materials provided with the distribution.
 #
-# * Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be
-#   used to endorse or promote products derived from this software without specific prior written permission.
+# * Neither the names of Kitware, Inc., the Insight Software Consortium, nor the names of their contributors may be used
+#   to endorse or promote products derived from this software without specific prior written permission.
 #
 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
 # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE
@@ -68,9 +68,11 @@ endif()
 # According to http://stackoverflow.com/questions/646518/python-how-to-detect-debug-interpreter testing whether sys has
 # the gettotalrefcount function is a reliable, cross-platform way to detect a CPython debug interpreter.
 #
-# The library suffix is from the config var LDVERSION sometimes, otherwise VERSION. VERSION will typically be like
-# "2.7" on unix, and "27" on windows.
-execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "from distutils import sysconfig as s;import sys;import struct;
+# The library suffix is from the config var LDVERSION sometimes, otherwise VERSION. VERSION will typically be like "2.7"
+# on unix, and "27" on windows.
+execute_process(
+  COMMAND
+    "${PYTHON_EXECUTABLE}" "-c" "from distutils import sysconfig as s;import sys;import struct;
 print('.'.join(str(v) for v in sys.version_info));
 print(sys.prefix);
 print(s.get_python_inc(plat_specific=True));
@@ -81,7 +83,10 @@ print(struct.calcsize('@P'));
 print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION'));
 print(s.get_config_var('LIBDIR') or '');
 print(s.get_config_var('MULTIARCH') or '');
-" RESULT_VARIABLE _PYTHON_SUCCESS OUTPUT_VARIABLE _PYTHON_VALUES ERROR_VARIABLE _PYTHON_ERROR_VALUE)
+"
+  RESULT_VARIABLE _PYTHON_SUCCESS
+  OUTPUT_VARIABLE _PYTHON_VALUES
+  ERROR_VARIABLE _PYTHON_ERROR_VALUE)
 
 if(NOT _PYTHON_SUCCESS MATCHES 0)
   if(PythonLibsNew_FIND_REQUIRED)
@@ -94,22 +99,10 @@ endif()
 
 # Convert the process output into a list
 if(WIN32)
-  string(REGEX
-         REPLACE "\\\\"
-                 "/"
-                 _PYTHON_VALUES
-                 ${_PYTHON_VALUES})
+  string(REGEX REPLACE "\\\\" "/" _PYTHON_VALUES ${_PYTHON_VALUES})
 endif()
-string(REGEX
-       REPLACE ";"
-               "\\\\;"
-               _PYTHON_VALUES
-               ${_PYTHON_VALUES})
-string(REGEX
-       REPLACE "\n"
-               ";"
-               _PYTHON_VALUES
-               ${_PYTHON_VALUES})
+string(REGEX REPLACE ";" "\\\\;" _PYTHON_VALUES ${_PYTHON_VALUES})
+string(REGEX REPLACE "\n" ";" _PYTHON_VALUES ${_PYTHON_VALUES})
 list(GET _PYTHON_VALUES 0 _PYTHON_VERSION_LIST)
 list(GET _PYTHON_VALUES 1 PYTHON_PREFIX)
 list(GET _PYTHON_VALUES 2 PYTHON_INCLUDE_DIR)
@@ -135,31 +128,15 @@ if(CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZE
 endif()
 
 # The built-in FindPython didn't always give the version numbers
-string(REGEX
-       REPLACE "\\."
-               ";"
-               _PYTHON_VERSION_LIST
-               ${_PYTHON_VERSION_LIST})
+string(REGEX REPLACE "\\." ";" _PYTHON_VERSION_LIST ${_PYTHON_VERSION_LIST})
 list(GET _PYTHON_VERSION_LIST 0 PYTHON_VERSION_MAJOR)
 list(GET _PYTHON_VERSION_LIST 1 PYTHON_VERSION_MINOR)
 list(GET _PYTHON_VERSION_LIST 2 PYTHON_VERSION_PATCH)
 
 # Make sure all directory separators are '/'
-string(REGEX
-       REPLACE "\\\\"
-               "/"
-               PYTHON_PREFIX
-               ${PYTHON_PREFIX})
-string(REGEX
-       REPLACE "\\\\"
-               "/"
-               PYTHON_INCLUDE_DIR
-               ${PYTHON_INCLUDE_DIR})
-string(REGEX
-       REPLACE "\\\\"
-               "/"
-               PYTHON_SITE_PACKAGES
-               ${PYTHON_SITE_PACKAGES})
+string(REGEX REPLACE "\\\\" "/" PYTHON_PREFIX ${PYTHON_PREFIX})
+string(REGEX REPLACE "\\\\" "/" PYTHON_INCLUDE_DIR ${PYTHON_INCLUDE_DIR})
+string(REGEX REPLACE "\\\\" "/" PYTHON_SITE_PACKAGES ${PYTHON_SITE_PACKAGES})
 
 if(CMAKE_HOST_WIN32)
   set(PYTHON_LIBRARY "${PYTHON_PREFIX}/libs/Python${PYTHON_LIBRARY_SUFFIX}.lib")
@@ -184,7 +161,11 @@ else()
   endif()
   # message(STATUS "Searching for Python libs in ${_PYTHON_LIBS_SEARCH}") Probably this needs to be more involved. It
   # would be nice if the config information the python interpreter itself gave us were more complete.
-  find_library(PYTHON_LIBRARY NAMES "python${PYTHON_LIBRARY_SUFFIX}" PATHS ${_PYTHON_LIBS_SEARCH} NO_DEFAULT_PATH)
+  find_library(
+    PYTHON_LIBRARY
+    NAMES "python${PYTHON_LIBRARY_SUFFIX}"
+    PATHS ${_PYTHON_LIBS_SEARCH}
+    NO_DEFAULT_PATH)
 
   # If all else fails, just set the name/version and let the linker figure out the path.
   if(NOT PYTHON_LIBRARY)
diff --git a/cmake/modules/FindSpe10Data.cmake b/cmake/modules/FindSpe10Data.cmake
index f1429216cb9d47e25fbb4a797c983689d99a26e9..1ca2a604460d0c929fdfbb0b1e0830f090cadb7d 100644
--- a/cmake/modules/FindSpe10Data.cmake
+++ b/cmake/modules/FindSpe10Data.cmake
@@ -10,58 +10,61 @@
 # ~~~
 
 set(DXT_DATA_BASEDIR "${CMAKE_BINARY_DIR}/data")
-if (Spe10Data_FOUND)
+if(Spe10Data_FOUND)
   return()
 endif()
 set(Spe10Data_FOUND 0)
-if (NOT EXISTS "${DXT_DATA_BASEDIR}")
+if(NOT EXISTS "${DXT_DATA_BASEDIR}")
   file(MAKE_DIRECTORY "${DXT_DATA_BASEDIR}")
 endif(NOT EXISTS "${DXT_DATA_BASEDIR}")
-if (NOT EXISTS "${DXT_DATA_BASEDIR}/perm_case1.dat")
+if(NOT EXISTS "${DXT_DATA_BASEDIR}/perm_case1.dat")
   # download file 1
-  file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/perm_case1.zip ${DXT_DATA_BASEDIR}/perm_case1.zip STATUS DOWNLOAD_STATUS)
+  file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/perm_case1.zip
+       ${DXT_DATA_BASEDIR}/perm_case1.zip STATUS DOWNLOAD_STATUS)
   list(GET DOWNLOAD_STATUS 0 SPE10_FILE1_STATUS)
-  if (NOT SPE10_FILE1_STATUS EQUAL 0)
+  if(NOT SPE10_FILE1_STATUS EQUAL 0)
     message(WARNING "Failed downloading perm_case1.zip! Error: ${DOWNLOAD_STATUS}.")
     set(Spe10Data_FOUND 0)
     return()
   endif(NOT SPE10_FILE1_STATUS EQUAL 0)
   # extract file 1
-  execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/perm_case1.zip"
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/perm_case1.zip"
     WORKING_DIRECTORY "${DXT_DATA_BASEDIR}"
     RESULT_VARIABLE SPE10_FILE1_STATUS
     OUTPUT_VARIABLE SPE10_FILE1_OUTPUT
     ERROR_VARIABLE SPE10_FILE1_OUTPUT)
-  if (NOT SPE10_FILE1_STATUS EQUAL 0)
+  if(NOT SPE10_FILE1_STATUS EQUAL 0)
     message(WARNING "Failed extracting perm_case1.zip! Output: ${SPE10_FILE1_OUTPUT}.")
     set(Spe10Data_FOUND 0)
     return()
   endif(NOT SPE10_FILE1_STATUS EQUAL 0)
 endif(NOT EXISTS ${DXT_DATA_BASEDIR}/perm_case1.dat)
 
-if (NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat")
+if(NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat")
   # download file 2
-  file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/por_perm_case2a.zip ${DXT_DATA_BASEDIR}/por_perm_case2a.zip STATUS DOWNLOAD_STATUS)
+  file(DOWNLOAD https://github.com/dune-community/dune-xt-data/raw/master/dune/xt/data/por_perm_case2a.zip
+       ${DXT_DATA_BASEDIR}/por_perm_case2a.zip STATUS DOWNLOAD_STATUS)
   list(GET DOWNLOAD_STATUS 0 SPE10_FILE2_STATUS)
-  if (NOT SPE10_FILE2_STATUS EQUAL 0)
+  if(NOT SPE10_FILE2_STATUS EQUAL 0)
     message(WARNING "Failed downloading por_perm_case2a.zip! Error: ${DOWNLOAD_STATUS}.")
     set(Spe10Data_FOUND 0)
     return()
   endif(NOT SPE10_FILE2_STATUS EQUAL 0)
   # extract file 2
-  execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/por_perm_case2a.zip"
+  execute_process(
+    COMMAND ${CMAKE_COMMAND} -E tar xzf "${DXT_DATA_BASEDIR}/por_perm_case2a.zip"
     WORKING_DIRECTORY "${DXT_DATA_BASEDIR}"
     RESULT_VARIABLE SPE10_FILE2_STATUS
     OUTPUT_VARIABLE SPE10_FILE2_OUTPUT
     ERROR_VARIABLE SPE10_FILE2_OUTPUT)
-  if (NOT SPE10_FILE2_STATUS EQUAL 0)
+  if(NOT SPE10_FILE2_STATUS EQUAL 0)
     message(WARNING "Failed extracting por_perm_case2a.zip! Output: ${SPE10_FILE2_OUTPUT}.")
     set(Spe10Data_FOUND 0)
     return()
   endif(NOT SPE10_FILE2_STATUS EQUAL 0)
-endif (NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat")
+endif(NOT EXISTS "${DXT_DATA_BASEDIR}/spe_perm.dat")
 set(Spe10Data_FOUND 1)
 set(HAVE_SPE10_DATA 1)
 set(SPE10_MODEL1_FILENAME ${DXT_DATA_BASEDIR}/perm_case1.dat)
 set(SPE10_MODEL2_FILENAME ${DXT_DATA_BASEDIR}/spe_perm.dat)
-
diff --git a/cmake/modules/FindTBB.cmake b/cmake/modules/FindTBB.cmake
index bf3f81f0351449bd80d517e3be33545d960f4254..1a1e7b689d3f91adfd157b77551edb5f4196f7b0 100644
--- a/cmake/modules/FindTBB.cmake
+++ b/cmake/modules/FindTBB.cmake
@@ -53,11 +53,10 @@
 #
 # TBB_FOUND                       True if TBB was found and is usable TBB_cpf_FOUND                   True if community
 # preview edition was found and is usable TBB_allocator_FOUND             True if scalable allocator library was found
-# and is usable TBB_INCLUDE_DIRS                Path to the TBB include dirs. This variable is empty if the internal
-# TBB version of an Intel compiler is in use TBB_LIBRARIES                   List of the TBB libraries that a target
-# must be linked to TBB_COMPILE_DEFINITIONS         Required compile definitions to use TBB TBB_COMPILE_OPTIONS
-# Required compile options to use TBB TBB_INTEL_COMPILER_INTERNAL_TBB True if internal TBB version of Intel compiler is
-# in use
+# and is usable TBB_INCLUDE_DIRS                Path to the TBB include dirs. This variable is empty if the internal TBB
+# version of an Intel compiler is in use TBB_LIBRARIES                   List of the TBB libraries that a target must be
+# linked to TBB_COMPILE_DEFINITIONS         Required compile definitions to use TBB TBB_COMPILE_OPTIONS Required compile
+# options to use TBB TBB_INTEL_COMPILER_INTERNAL_TBB True if internal TBB version of Intel compiler is in use
 #
 # In addition, TBB is automatically registered with the dune_enable_all_packages() facility. If you don't want to use
 # that feature, the module also provides the following function:
@@ -83,7 +82,8 @@ option(TBB_DEBUG "Turn on TBB debugging (modifies compiler flags and links again
 
 # source for our little test program. We have to compile this multiple times, so store it in a variable for DRY and
 # better readability
-set(tbb_compile_source "
+set(tbb_compile_source
+    "
 #include <tbb/tbb.h>
 #include <numeric>
 
@@ -101,62 +101,72 @@ function(parse_tbb_vars_sh)
   message(STATUS "Taking TBB location from ${TBB_VARS_SH}")
   find_package(UnixCommands)
   set(tbb_vars_works FALSE)
-  execute_process(COMMAND ${BASH} -c ". ${TBB_VARS_SH} > /dev/null"
-                  RESULT_VARIABLE shell_result
-                  OUTPUT_VARIABLE shell_out)
+  execute_process(
+    COMMAND ${BASH} -c ". ${TBB_VARS_SH} > /dev/null"
+    RESULT_VARIABLE shell_result
+    OUTPUT_VARIABLE shell_out)
   if(${shell_result} EQUAL 0)
     set(tbb_vars_opt "")
     set(tbb_vars_works TRUE)
   else() # try script from binary Linux installs that requires an 'intel64' argument
-    execute_process(COMMAND ${BASH} -c ". ${TBB_VARS_SH} intel64 >/dev/null"
-                    RESULT_VARIABLE shell_result
-                    OUTPUT_VARIABLE shell_out)
+    execute_process(
+      COMMAND ${BASH} -c ". ${TBB_VARS_SH} intel64 >/dev/null"
+      RESULT_VARIABLE shell_result
+      OUTPUT_VARIABLE shell_out)
     if(${shell_result} EQUAL 0)
       set(tbb_vars_opt "intel64")
       set(tbb_vars_works TRUE)
     endif()
   endif()
   if(tbb_vars_works)
-    execute_process(COMMAND ${BASH} -c "unset CPATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $CPATH"
-                    RESULT_VARIABLE shell_result
-                    OUTPUT_VARIABLE shell_out)
-    find_path(TBB_INCLUDE_DIRS
-              NAMES tbb/task_scheduler_init.h
-              PATHS ${shell_out}
-              DOC "Path to TBB include directory"
-              NO_DEFAULT_PATH)
-    execute_process(COMMAND ${BASH} -c
-                            "unset LIBRARY_PATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $LIBRARY_PATH"
-                    RESULT_VARIABLE shell_result
-                    OUTPUT_VARIABLE shell_out)
-    set(TBB_LIBRARY_DIR ${shell_out} CACHE PATH "Path to TBB library directory")
+    execute_process(
+      COMMAND ${BASH} -c "unset CPATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $CPATH"
+      RESULT_VARIABLE shell_result
+      OUTPUT_VARIABLE shell_out)
+    find_path(
+      TBB_INCLUDE_DIRS
+      NAMES tbb/task_scheduler_init.h
+      PATHS ${shell_out}
+      DOC "Path to TBB include directory"
+      NO_DEFAULT_PATH)
+    execute_process(
+      COMMAND ${BASH} -c "unset LIBRARY_PATH ; . ${TBB_VARS_SH} ${tbb_vars_opt} >/dev/null && echo -n $LIBRARY_PATH"
+      RESULT_VARIABLE shell_result
+      OUTPUT_VARIABLE shell_out)
+    set(TBB_LIBRARY_DIR
+        ${shell_out}
+        CACHE PATH "Path to TBB library directory")
   else()
     message(WARNING "Could not parse tbbvars.sh file at {TBB_VARS_SH}")
   endif()
 endfunction()
 
 # Check whether the user gave us an existing tbbvars.sh file
-find_file(TBB_VARS_SH tbbvars.sh DOC "Path to tbbvars.sh script" NO_DEFAULT_PATH)
+find_file(
+  TBB_VARS_SH tbbvars.sh
+  DOC "Path to tbbvars.sh script"
+  NO_DEFAULT_PATH)
 # now we try to find tbbvars.sh on our own
-find_file(TBB_VARS_SH tbbvars.sh HINTS ${tbb_bin_hints} DOC "Path to tbbvars.sh script")
+find_file(
+  TBB_VARS_SH tbbvars.sh
+  HINTS ${tbb_bin_hints}
+  DOC "Path to tbbvars.sh script")
 
 if(TBB_VARS_SH)
   parse_tbb_vars_sh()
 else() # Try to find TBB in standard include paths
-  find_path(TBB_INCLUDE_DIRS tbb/tbb.h
-            PATHS ENV
-                  CPATH
-                  ${TBB_INCLUDE_DIR}
-                  ${tbb_include_hints}
-            DOC "Path to TBB include directory") # Try to find some version of the TBB library in standard library
-                                                 # paths
-  find_path(TBB_LIBRARY_DIR
-            "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview${CMAKE_SHARED_LIBRARY_SUFFIX}"
-            "${CMAKE_SHARED_LIBRARY_PREFIX}tbb${CMAKE_SHARED_LIBRARY_SUFFIX}"
-            "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
-            "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
-            PATHS ENV LIBRARY_PATH ${tbb_lib_hints}
-            DOC "Path to TBB library directory")
+  find_path(
+    TBB_INCLUDE_DIRS tbb/tbb.h
+    PATHS ENV CPATH ${TBB_INCLUDE_DIR} ${tbb_include_hints}
+    DOC "Path to TBB include directory") # Try to find some version of the TBB library in standard library paths
+  find_path(
+    TBB_LIBRARY_DIR
+    "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview${CMAKE_SHARED_LIBRARY_SUFFIX}"
+    "${CMAKE_SHARED_LIBRARY_PREFIX}tbb${CMAKE_SHARED_LIBRARY_SUFFIX}"
+    "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_preview_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
+    "${CMAKE_SHARED_LIBRARY_PREFIX}tbb_debug${CMAKE_SHARED_LIBRARY_SUFFIX}"
+    PATHS ENV LIBRARY_PATH ${tbb_lib_hints}
+    DOC "Path to TBB library directory")
 endif()
 
 # helper function to invoke find_library() correctly If we are using tbbvars.sh, we exclude system-default library
@@ -169,9 +179,16 @@ function(find_tbb_library)
   cmake_parse_arguments(LIB "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
 
   if(TBB_VARS_SH)
-    find_library(${LIB_VAR} ${LIB_NAME} PATHS ${TBB_LIBRARY_DIR} DOC "${LIB_DOC}" NO_DEFAULT_PATH)
+    find_library(
+      ${LIB_VAR} ${LIB_NAME}
+      PATHS ${TBB_LIBRARY_DIR}
+      DOC "${LIB_DOC}"
+      NO_DEFAULT_PATH)
   else()
-    find_library(${LIB_VAR} ${LIB_NAME} PATHS ${TBB_LIBRARY_DIR} ${lib_hints} DOC "${LIB_DOC}")
+    find_library(
+      ${LIB_VAR} ${LIB_NAME}
+      PATHS ${TBB_LIBRARY_DIR} ${lib_hints}
+      DOC "${LIB_DOC}")
   endif()
 endfunction()
 
@@ -195,11 +212,7 @@ set(TBB_allocator_FOUND FALSE)
 foreach(component ${TBB_FIND_COMPONENTS})
 
   if(component STREQUAL "cpf")
-    find_tbb_library(VAR
-                     TBB_LIBTBB_PREVIEW
-                     NAME
-                     "tbb_preview${tbb_debug_suffix}"
-                     DOC
+    find_tbb_library(VAR TBB_LIBTBB_PREVIEW NAME "tbb_preview${tbb_debug_suffix}" DOC
                      "Path to TBB community preview library")
     if(TBB_LIBTBB_PREVIEW)
       list(APPEND TBB_LIBRARIES ${TBB_LIBTBB_PREVIEW})
@@ -226,7 +239,9 @@ if(NOT TBB_cpf_FOUND)
     list(APPEND TBB_LIBRARIES ${TBB_LIBTBB})
   endif()
 else() # This avoids special-casing later on
-  set(TBB_LIBTBB ${TBB_LIBTBB_PREVIEW} CACHE FILEPATH "Path to TBB library")
+  set(TBB_LIBTBB
+      ${TBB_LIBTBB_PREVIEW}
+      CACHE FILEPATH "Path to TBB library")
 endif()
 
 # Don't show these to the user, they are just confusing
@@ -243,8 +258,8 @@ set(TBB_INTEL_COMPILER_INTERNAL_TBB OFF)
 # We didn't manage to find TBB yet, so try if we can fall back to the one shipped as part of Intel's compiler
 if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel"))
 
-  # This while doesn't work in debug mode because -tbb always injects -ltbb into the linker flags, and that clashes
-  # with -ltbb_debug
+  # This while doesn't work in debug mode because -tbb always injects -ltbb into the linker flags, and that clashes with
+  # -ltbb_debug
   if(NOT TBB_DEBUG)
     message(STATUS "Could not find TBB in normal places, trying to fall back to internal version of Intel Compiler")
 
@@ -269,7 +284,7 @@ if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel"))
           message(
             STATUS
               "Cannot link to community preview version when using compiler-internal version of TBB. Please specify the tbbvars.sh script in TBB_VARS_SH"
-            )
+          )
 
         elseif(component STREQUAL "allocator") # we'll check for this by trying to link against the library
           set(CMAKE_REQUIRED_LIBRARIES tbbmalloc)
@@ -292,7 +307,7 @@ if((NOT TBB_LIBTBB) AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel"))
       STATUS
         "Could not find TBB in normal places, and don't know how to fall back to internal version of Intel Compiler for debug version.
 You can either turn of the TBB_DEBUG option or point the TBB_VARS_SH variable at the tbbvars.sh script shipped with your compiler."
-      )
+    )
   endif()
 endif()
 
@@ -317,15 +332,16 @@ if(TBB_INTEL_COMPILER_INTERNAL_TBB)
   set(TBB_INCLUDE_DIRS "")
   set(TBB_LIBRARIES "")
 
-  find_package_handle_standard_args(TBB REQUIRED_VARS TBB_COMPILE_OPTIONS TBB_COMPILE_TEST HANDLE_COMPONENTS)
+  find_package_handle_standard_args(
+    TBB
+    REQUIRED_VARS TBB_COMPILE_OPTIONS TBB_COMPILE_TEST
+    HANDLE_COMPONENTS)
 else()
 
-  find_package_handle_standard_args(TBB
-                                    REQUIRED_VARS
-                                    TBB_INCLUDE_DIRS
-                                    TBB_LIBRARIES
-                                    TBB_COMPILE_TEST
-                                    HANDLE_COMPONENTS)
+  find_package_handle_standard_args(
+    TBB
+    REQUIRED_VARS TBB_INCLUDE_DIRS TBB_LIBRARIES TBB_COMPILE_TEST
+    HANDLE_COMPONENTS)
 
 endif()
 
@@ -338,15 +354,16 @@ include(XtCompilerSupport)
 if(TBB_FOUND)
   set(TBB_CACHE_ALIGNED_ALLOCATOR_ALIGNMENT 128)
   message(STATUS "defaulting TBB_CACHE_ALIGNED_ALLOCATOR_ALIGNMENT to 128")
-  dune_register_package_flags(COMPILE_DEFINITIONS
-                              ENABLE_TBB=1
-                              ${TBB_COMPILE_DEFINITIONS}
-                              COMPILE_OPTIONS
-                              ${TBB_COMPILE_OPTIONS}
-                              INCLUDE_DIRS
-                              ${TBB_INCLUDE_DIRS}
-                              LIBRARIES
-                              ${TBB_LIBRARIES})
+  dune_register_package_flags(
+    COMPILE_DEFINITIONS
+    ENABLE_TBB=1
+    ${TBB_COMPILE_DEFINITIONS}
+    COMPILE_OPTIONS
+    ${TBB_COMPILE_OPTIONS}
+    INCLUDE_DIRS
+    ${TBB_INCLUDE_DIRS}
+    LIBRARIES
+    ${TBB_LIBRARIES})
   foreach(_idir ${TBB_INCLUDE_DIRS})
     include_sys_dir(${_idir})
   endforeach()
diff --git a/cmake/modules/GridUtils.cmake b/cmake/modules/GridUtils.cmake
index e53e9abdb16931094727d676d9bc7350821f7f2b..6d396f424bb8eb10d93292fe4c6615cc7a9af2e0 100644
--- a/cmake/modules/GridUtils.cmake
+++ b/cmake/modules/GridUtils.cmake
@@ -11,9 +11,13 @@
 #   Tobias Leibner  (2020)
 # ~~~
 
-set(GRIDTYPE "YASPGRID" CACHE STRING "GRIDTYPE")
+set(GRIDTYPE
+    "YASPGRID"
+    CACHE STRING "GRIDTYPE")
 
-set(GRIDDIM "2" CACHE STRING "GRIDDIM")
+set(GRIDDIM
+    "2"
+    CACHE STRING "GRIDDIM")
 
 add_definitions("-DGRIDDIM=${GRIDDIM}")
 add_definitions("-DGRIDTYPE=${GRIDTYPE}")
diff --git a/cmake/modules/Hints.cmake b/cmake/modules/Hints.cmake
index ade5ac4c604a292d8a530fd33ec4fa05c6183183..bc5fa271a0487fdb6156a5f281fb64672aca5c4d 100644
--- a/cmake/modules/Hints.cmake
+++ b/cmake/modules/Hints.cmake
@@ -16,12 +16,8 @@ macro(append_to_each INPUTLIST POSTFIX OUTPUTLIST)
   endforeach(ENTRY ${INPUTLIST})
 endmacro()
 
-set(root_hints
-    "${CMAKE_SOURCE_DIR}/../local/"
-    "${CMAKE_SOURCE_DIR}/../environments/debian-minimal/local/"
-    "${CMAKE_SOURCE_DIR}/../environments/debian-full/local/"
-    "$ENV{HOME}/"
-    "$ENV{HOME}/Software/")
+set(root_hints "${CMAKE_SOURCE_DIR}/../local/" "${CMAKE_SOURCE_DIR}/../environments/debian-minimal/local/"
+               "${CMAKE_SOURCE_DIR}/../environments/debian-full/local/" "$ENV{HOME}/" "$ENV{HOME}/Software/")
 
 set(bin_hints "")
 append_to_each("${root_hints}" "bin/" bin_hints)
diff --git a/cmake/modules/XtCompilerSupport.cmake b/cmake/modules/XtCompilerSupport.cmake
index b740373e0a372ccd7d1e5fa3ec6cb2dd65147eb0..82b55ce9e48908856aa743e899342f320de27c43 100644
--- a/cmake/modules/XtCompilerSupport.cmake
+++ b/cmake/modules/XtCompilerSupport.cmake
@@ -34,7 +34,8 @@ macro(INCLUDE_SYS_DIR)
 endmacro(INCLUDE_SYS_DIR)
 
 include(CheckCXXSourceCompiles)
-check_cxx_source_compiles("
+check_cxx_source_compiles(
+  "
     #include <map>
     int main(void)
     {
@@ -42,9 +43,12 @@ check_cxx_source_compiles("
       a.emplace(2, 2);
       return 0;
     };
-" HAVE_MAP_EMPLACE)
+"
+  HAVE_MAP_EMPLACE)
 
-check_cxx_source_compiles("
+check_cxx_source_compiles(
+  "
     void foo([[maybe_unused]] bool arg) {}
     int main(void){};
-" HAS_WORKING_UNUSED_ATTRIBUTE)
+"
+  HAS_WORKING_UNUSED_ATTRIBUTE)
diff --git a/cmake/modules/XtTooling.cmake b/cmake/modules/XtTooling.cmake
index 4f88e416084c82e8c6a066dd95ce9295643a80af..ef7318b748fe98b0db8d02ca8eab9789f8329b33 100644
--- a/cmake/modules/XtTooling.cmake
+++ b/cmake/modules/XtTooling.cmake
@@ -17,16 +17,9 @@ macro(add_analyze)
     message(STATUS "adding analyze target")
     add_custom_target(analyze SOURCES ${ARGN})
     foreach(_file ${ARGN})
-      string(REPLACE "/"
-                     "_"
-                     fn
-                     ${_file})
-      add_custom_target("analyze_${fn}"
-                        ${ANALYZER}
-                        -fixit
-                        -p=${CMAKE_CURRENT_BINARY_DIR}
-                        -analyze
-                        ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
+      string(REPLACE "/" "_" fn ${_file})
+      add_custom_target("analyze_${fn}" ${ANALYZER} -fixit -p=${CMAKE_CURRENT_BINARY_DIR} -analyze
+                                        ${CMAKE_CURRENT_SOURCE_DIR}/${_file})
       add_dependencies(analyze "analyze_${fn}")
     endforeach(_file)
   else()
@@ -35,7 +28,7 @@ macro(add_analyze)
 endmacro(add_analyze)
 
 macro(add_format)
-  message(NOTICE clang-format support was moved to a `pre-commit` hook. See dune-xt/.pre-commit-config.yaml)
+  message(NOTICE "clang-format support was moved to a `pre-commit` hook. See dune-xt/.pre-commit-config.yaml.")
   add_custom_target("format" echo 'clang-format is now a pre-commit hook' && false)
 endmacro(add_format)
 
@@ -45,36 +38,37 @@ endmacro()
 
 macro(add_tidy_subdir _dxt_subdir)
   set(BASE ${PROJECT_SOURCE_DIR}/dune/xt/${_dxt_subdir})
-  file(GLOB_RECURSE _files
-                    "${BASE}/*.hh"
-                    "${BASE}/*.h"
-                    "${BASE}/*.cc"
-                    "${BASE}/*.cxx"
-                    "${BASE}/*.cpp"
-                    "${BASE}/*.c")
+  file(
+    GLOB_RECURSE
+    _files
+    "${BASE}/*.hh"
+    "${BASE}/*.h"
+    "${BASE}/*.cc"
+    "${BASE}/*.cxx"
+    "${BASE}/*.cpp"
+    "${BASE}/*.c")
   set(BASE ${PROJECT_SOURCE_DIR}/python/dune/xt/${_dxt_subdir})
-  file(GLOB_RECURSE _pyfiles
-                    "${BASE}/*.hh"
-                    "${BASE}/*.h"
-                    "${BASE}/*.cc"
-                    "${BASE}/*.cxx"
-                    "${BASE}/*.cpp"
-                    "${BASE}/*.c")
+  file(
+    GLOB_RECURSE
+    _pyfiles
+    "${BASE}/*.hh"
+    "${BASE}/*.h"
+    "${BASE}/*.cc"
+    "${BASE}/*.cxx"
+    "${BASE}/*.cpp"
+    "${BASE}/*.c")
   list(APPEND _files ${_pyfiles})
   list(REMOVE_DUPLICATES _files)
-  set(TIDY_ARGS
-      -config=
-      -format-style=file
-      -extra-arg-before='-includeconfig.h'
-      -p=${CMAKE_CURRENT_BINARY_DIR}
-      -header-filter=\".*/dune/xt/${_dxt_subdir}.*\")
-  add_custom_target(tidy_${_dxt_subdir}
-                    COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS}
-                            -export-fixes=${CMAKE_CURRENT_BINARY_DIR}/clang-tidy.fixes ${_files}
-                    WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
-  add_custom_target(fix_tidy_${_dxt_subdir}
-                    COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -fix ${_files}
-                    WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+  set(TIDY_ARGS -config= -format-style=file -extra-arg-before='-includeconfig.h' -p=${CMAKE_CURRENT_BINARY_DIR}
+                -header-filter=\".*/dune/xt/${_dxt_subdir}.*\")
+  add_custom_target(
+    tidy_${_dxt_subdir}
+    COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -export-fixes=${CMAKE_CURRENT_BINARY_DIR}/clang-tidy.fixes ${_files}
+    WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
+  add_custom_target(
+    fix_tidy_${_dxt_subdir}
+    COMMAND ${ClangTidy_EXECUTABLE} ${TIDY_ARGS} -fix ${_files}
+    WORKING_DIRECTORY ${PROJECT_SOURCE_DIR})
   add_dependencies(tidy tidy_${_dxt_subdir})
   add_dependencies(fix_tidy fix_tidy_${_dxt_subdir})
 endmacro(add_tidy)
@@ -90,20 +84,12 @@ endmacro(add_forced_doxygen_target)
 macro(DEPENDENCYCHECK)
   add_custom_target(dependencycheck SOURCES ${ARGN})
   foreach(HEADER ${ARGN})
-    string(REPLACE "/"
-                   "_"
-                   fn
-                   ${HEADER})
+    string(REPLACE "/" "_" fn ${HEADER})
     set(TEST_NAME "dependencycheck_${fn}")
     to_list_spaces(CMAKE_CXX_FLAGS TEST_NAME_FLAGS)
     set(XARGS ${TEST_NAME_FLAGS} -DHAVE_CONFIG_H -H -c ${HEADER} -w)
-    add_custom_target(${TEST_NAME}
-                      +
-                      ${dune-xt_SOURCE_DIR}/cmake/dependencyinfo.py
-                      ${CMAKE_CXX_COMPILER}
-                      ${XARGS}
-                      ${CMAKE_CURRENT_SOURCE_DIR}
-                      ${fn}.dep)
+    add_custom_target(${TEST_NAME} + ${dune-xt_SOURCE_DIR}/cmake/dependencyinfo.py ${CMAKE_CXX_COMPILER} ${XARGS}
+                                   ${CMAKE_CURRENT_SOURCE_DIR} ${fn}.dep)
     add_dependencies(dependencycheck ${TEST_NAME})
   endforeach(HEADER)
 endmacro(DEPENDENCYCHECK)
@@ -119,14 +105,15 @@ macro(ADD_CPPCHECK)
       file(APPEND ${CPPINLINST} "${SOURCEFILE}\n")
     endforeach(SOURCEFILE)
     to_list_spaces(CPPCHECK_FLAGS_SPLIT ${CMAKE_CXX_FLAGS})
-    add_custom_target(cppcheck
-                      cppcheck
-                      --enable=all
-                      --xml
-                      --report-progress
-                      --file-list=${CPPINLINST}
-                      ${CPPCHECK_FLAGS_SPLIT}
-                      2>cppcheck.xml)
+    add_custom_target(
+      cppcheck
+      cppcheck
+      --enable=all
+      --xml
+      --report-progress
+      --file-list=${CPPINLINST}
+      ${CPPCHECK_FLAGS_SPLIT}
+      2>cppcheck.xml)
   else(EXISTS ${CPPCHECK_BINARY})
     message(STATUS "Not adding cppcheck target because cppcheck executable not found")
   endif(EXISTS ${CPPCHECK_BINARY})
diff --git a/cmake/modules/dxt_all_sorted_testnames.cmake.in b/cmake/modules/dxt_all_sorted_testnames.cmake.in
deleted file mode 100644
index 85b83fa4ee0333819e5104912400804fdecc9442..0000000000000000000000000000000000000000
--- a/cmake/modules/dxt_all_sorted_testnames.cmake.in
+++ /dev/null
@@ -1,13 +0,0 @@
-# ~~~
-# This file is part of the dune-xt project:
-#   https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt
-# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved.
-# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause)
-#      or  GPL-2.0+ (http://opensource.org/licenses/gpl-license)
-#          with "runtime exception" (http://www.dune-project.org/license.html)
-# Authors:
-#   René Fritze    (2016)
-#   Tobias Leibner (2020)
-# ~~~
-
-${all_sorted_testnames}
\ No newline at end of file
diff --git a/cmake/modules/dxt_headercheck_targets.cmake.in b/cmake/modules/dxt_headercheck_targets.cmake.in
deleted file mode 100644
index 48e17ac75700c40d56836c6b8827e88b30148e32..0000000000000000000000000000000000000000
--- a/cmake/modules/dxt_headercheck_targets.cmake.in
+++ /dev/null
@@ -1,13 +0,0 @@
-# ~~~
-# This file is part of the dune-xt project:
-#   https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt
-# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved.
-# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause)
-#      or  GPL-2.0+ (http://opensource.org/licenses/gpl-license)
-#          with "runtime exception" (http://www.dune-project.org/license.html)
-# Authors:
-#   René Fritze    (2016)
-#   Tobias Leibner (2020)
-# ~~~
-
-${dxt_headercheck_targets}
\ No newline at end of file
diff --git a/cmake/modules/dxt_test_binaries.cmake.in b/cmake/modules/dxt_test_binaries.cmake.in
deleted file mode 100644
index 265df11aa1330d76dd9fd6b0a69fa30ee86eb5f1..0000000000000000000000000000000000000000
--- a/cmake/modules/dxt_test_binaries.cmake.in
+++ /dev/null
@@ -1,13 +0,0 @@
-# ~~~
-# This file is part of the dune-xt project:
-#   https://zivgitlab.uni-muenster.de/ag-ohlberger/dune-community/dune-xt
-# Copyright 2009-2021 dune-xt developers and contributors. All rights reserved.
-# License: Dual licensed as BSD 2-Clause License (http://opensource.org/licenses/BSD-2-Clause)
-#      or  GPL-2.0+ (http://opensource.org/licenses/gpl-license)
-#          with "runtime exception" (http://www.dune-project.org/license.html)
-# Authors:
-#   René Fritze    (2016)
-#   Tobias Leibner (2020)
-# ~~~
-
-${dxt_test_binaries}
\ No newline at end of file
diff --git a/dune/CMakeLists.txt b/dune/CMakeLists.txt
index c8bb8ca8e50165018bd4a7de54ce974b696ae4e2..cf13ca7c0c5ed92cb70803eac23e62ef64637f10 100644
--- a/dune/CMakeLists.txt
+++ b/dune/CMakeLists.txt
@@ -13,4 +13,8 @@
 
 add_subdirectory(xt)
 add_subdirectory(pybindxi)
-install(DIRECTORY xt DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/ FILES_MATCHING PATTERN "*.hh")
+install(
+  DIRECTORY xt
+  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/
+  FILES_MATCHING
+  PATTERN "*.hh")
diff --git a/dune/pybindxi/CMakeLists.txt b/dune/pybindxi/CMakeLists.txt
index 1af710289439415a5973318f8be1ae3ffb986deb..400e9651cbf05f644e074dd2a784d2f7f3014656 100644
--- a/dune/pybindxi/CMakeLists.txt
+++ b/dune/pybindxi/CMakeLists.txt
@@ -13,32 +13,33 @@
 
 dune_library_add_sources(dunepybindxi SOURCES interpreter.cc)
 
-install(FILES attr.h
-              buffer_info.h
-              cast.h
-              chrono.h
-              common.h
-              complex.h
-              eigen.h
-              embed.h
-              eval.h
-              functional.h
-              gil.h
-              interpreter.hh
-              iostream.h
-              numpy.h
-              operators.h
-              options.h
-              pybind11.h
-              pytypes.h
-              stl.h
-              stl_bind.h
-              stl/filesystem.h
-              detail/class.h
-              detail/common.h
-              detail/descr.h
-              detail/init.h
-              detail/internals.h
-              detail/type_caster_base.h
-              detail/typeid.h
-        DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/pybindxi)
+install(
+  FILES attr.h
+        buffer_info.h
+        cast.h
+        chrono.h
+        common.h
+        complex.h
+        eigen.h
+        embed.h
+        eval.h
+        functional.h
+        gil.h
+        interpreter.hh
+        iostream.h
+        numpy.h
+        operators.h
+        options.h
+        pybind11.h
+        pytypes.h
+        stl.h
+        stl_bind.h
+        stl/filesystem.h
+        detail/class.h
+        detail/common.h
+        detail/descr.h
+        detail/init.h
+        detail/internals.h
+        detail/type_caster_base.h
+        detail/typeid.h
+  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/pybindxi)
diff --git a/dune/xt/la/CMakeLists.txt b/dune/xt/la/CMakeLists.txt
index 77ac496857a56e51d7c1358d16daca99e2a447b4..98ba1a13f7afb94b76e65f72dd9067ce5479a095 100644
--- a/dune/xt/la/CMakeLists.txt
+++ b/dune/xt/la/CMakeLists.txt
@@ -14,14 +14,16 @@
 set(lib_dune_xt_la_sources container/pattern.cc eigen-solver/internal/numpy.cc)
 
 if(DUNE_XT_WITH_PYTHON_BINDINGS)
-  list(APPEND lib_dune_xt_la_sources
-              container/common.cc
-              container/eigen/dense.cc
-              container/eigen/sparse.cc
-              container/istl.cc
-              solver/common.cc
-              solver/eigen.cc
-              solver/istl.cc)
+  list(
+    APPEND
+    lib_dune_xt_la_sources
+    container/common.cc
+    container/eigen/dense.cc
+    container/eigen/sparse.cc
+    container/istl.cc
+    solver/common.cc
+    solver/eigen.cc
+    solver/istl.cc)
 endif()
 
 dune_library_add_sources(dunext SOURCES ${lib_dune_xt_la_sources})
diff --git a/dune/xt/test/CMakeLists.txt b/dune/xt/test/CMakeLists.txt
index a19d854708c5d1c51e0bcd4cde93a8ab96d3068e..57c844adb5de6f5566f8ec0fee92ff0f06efcbd9 100644
--- a/dune/xt/test/CMakeLists.txt
+++ b/dune/xt/test/CMakeLists.txt
@@ -18,18 +18,15 @@ dependencycheck(${xtcommon})
 include_directories(SYSTEM ${CMAKE_CURRENT_SOURCE_DIR}/gtest)
 dune_library_add_sources(gtest_dune_xt SOURCES common.cxx gtest/gtest-all.cc)
 
-install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/gtest
-        DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/
-        FILES_MATCHING
-        PATTERN "*")
+install(
+  DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/gtest
+  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/
+  FILES_MATCHING
+  PATTERN "*")
 install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/main.hxx DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/xt/test/)
 
 # this should ideally move back into the grid subdir, along with the files
-dune_symlink_to_source_files(FILES
-                             gmsh_2d_simplices.msh
-                             dgf_1d_interval.dgf
-                             dgf_2d_interval.dgf
-                             dgf_3d_interval.dgf
+dune_symlink_to_source_files(FILES gmsh_2d_simplices.msh dgf_1d_interval.dgf dgf_2d_interval.dgf dgf_3d_interval.dgf
                              dgf_4d_interval.dgf)
 
 add_subdir_tests(common)
diff --git a/dune/xt/test/functions/builder_definitions.cmake b/dune/xt/test/functions/builder_definitions.cmake
deleted file mode 100644
index ae32417650a681fc54d8c331cb53feb48b71da9b..0000000000000000000000000000000000000000
--- a/dune/xt/test/functions/builder_definitions.cmake
+++ /dev/null
@@ -1,563 +0,0 @@
-set(DXT_BIN_COUNT "8" CACHE STRING "number of bins for test targets")
-add_custom_target(test_binaries_builder_0
-                  DEPENDS headercheck__dune_xt_functions_base_function-as-flux-function.hh
-                          headercheck__dune_xt_functions_base_reinterpret.hh
-                          headercheck__dune_xt_functions_generic_flux-function.hh
-                          headercheck__dune_xt_functions_indicator.hh
-                          headercheck__python_dune_xt_functions_ESV2007.bindings.hh
-                          test_ESV2007_cutoff_2d_3d__3d_simplex_alunonconformgrid
-                          test_ESV2007_exact_solution__2d_simplex_alunonconformgrid
-                          test_ESV2007_force__2d_cube_yaspgrid
-                          test_ESV2007_force__2d_simplex_aluconformgrid
-                          test_checkerboard__3d_cube_alunonconformgrid
-                          test_constant__2d_cube_yaspgrid
-                          test_constant__2d_simplex_alunonconformgrid
-                          test_constant__3d_cube_yaspgrid
-                          test_constant__3d_simplex_albertagrid
-                          test_difference__1d_cube_yaspgrid
-                          test_difference__3d_cube_alunonconformgrid
-                          test_expression_matrix_valued__2d_cube_yaspgrid
-                          test_expression_matrix_valued__2d_simplex_aluconformgrid
-                          test_expression_parametric__3d_cube_yaspgrid
-                          test_expression_vector_valued__3d_simplex_aluconformgrid
-                          test_flattop__1d_cube_yaspgrid
-                          test_flattop__2d_cube_yaspgrid
-                          test_flattop__2d_simplex_alunonconformgrid
-                          test_generic_flux_function__1d_cube_onedgrid
-                          test_generic_flux_function__3d_simplex_alunonconformgrid
-                          test_generic_function__2d_simplex_albertagrid
-                          test_generic_grid_function__2d_simplex_albertagrid
-                          test_generic_grid_function__3d_simplex_albertagrid
-                          test_generic_grid_function__3d_simplex_uggrid
-                          test_indicator_grid_function__2d_cube_alunonconformgrid
-                          test_spe10_model2__3d_simplex_uggrid
-                          test_sum_for_functions__2d_simplex_uggrid
-                          test_sum_for_functions__3d_cube_yaspgrid
-                          test_sum_for_functions__3d_simplex_albertagrid
-                          test_sum_for_grid_functions__3d_simplex_alunonconformgrid
-                          test_visualization__2d_simplex_aluconformgrid
-                          test_visualization__3d_simplex_albertagrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_ESV2007_exact_solution__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_ESV2007_force__2d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_ESV2007_force__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_checkerboard__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_constant__2d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_constant__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_constant__3d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_constant__3d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_difference__1d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_difference__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_expression_matrix_valued__2d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_expression_matrix_valued__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_expression_parametric__3d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_expression_vector_valued__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_flattop__1d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_flattop__2d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_flattop__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_flux_function__1d_cube_onedgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_flux_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_grid_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_grid_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_generic_grid_function__3d_simplex_uggrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_indicator_grid_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_spe10_model2__3d_simplex_uggrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_sum_for_functions__2d_simplex_uggrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_sum_for_functions__3d_cube_yaspgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_sum_for_functions__3d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_sum_for_grid_functions__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_visualization__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_0")
-set_tests_properties(test_visualization__3d_simplex_albertagrid PROPERTIES LABELS "builder_0")
-add_custom_target(test_binaries_builder_1
-                  DEPENDS headercheck__dune_xt_functions_base_visualization.hh
-                          headercheck__dune_xt_functions_constant.hh
-                          headercheck__dune_xt_functions_interfaces_element-flux-functions.hh
-                          headercheck__dune_xt_functions_interfaces_element-functions.hh
-                          headercheck__dune_xt_functions_inverse.hh
-                          headercheck__python_dune_xt_functions_expression.hh
-                          test_ESV2007_cutoff_2d_3d__3d_simplex_aluconformgrid
-                          test_ESV2007_exact_solution__2d_simplex_albertagrid
-                          test_ESV2007_exact_solution__2d_simplex_aluconformgrid
-                          test_ESV2007_force__2d_simplex_alunonconformgrid
-                          test_checkerboard__2d_simplex_aluconformgrid
-                          test_constant__1d_cube_onedgrid
-                          test_constant__2d_cube_alunonconformgrid
-                          test_constant__3d_cube_alunonconformgrid
-                          test_constant__3d_simplex_uggrid
-                          test_difference__1d_cube_onedgrid
-                          test_difference__2d_simplex_aluconformgrid
-                          test_difference__2d_simplex_uggrid
-                          test_expression_parametric__2d_simplex_aluconformgrid
-                          test_expression_parametric__3d_simplex_uggrid
-                          test_expression_vector_valued__1d_cube_yaspgrid
-                          test_expression_vector_valued__3d_cube_yaspgrid
-                          test_expression_vector_valued__3d_simplex_uggrid
-                          test_flattop__3d_simplex_alunonconformgrid
-                          test_generic_flux_function__3d_simplex_aluconformgrid
-                          test_generic_function__1d_cube_yaspgrid
-                          test_generic_function__3d_simplex_aluconformgrid
-                          test_generic_function__3d_simplex_uggrid
-                          test_generic_grid_function__1d_cube_onedgrid
-                          test_generic_grid_function__2d_simplex_alunonconformgrid
-                          test_indicator_function__1d_cube_onedgrid
-                          test_indicator_grid_function__3d_cube_alunonconformgrid
-                          test_spe10_model1__2d_simplex_aluconformgrid
-                          test_sum_for_functions__3d_simplex_uggrid
-                          test_visualization__2d_simplex_albertagrid
-                          test_visualization__2d_simplex_uggrid
-                          test_visualization__3d_simplex_alunonconformgrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_ESV2007_exact_solution__2d_simplex_albertagrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_ESV2007_exact_solution__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_ESV2007_force__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_checkerboard__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_constant__1d_cube_onedgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_constant__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_constant__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_constant__3d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_difference__1d_cube_onedgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_difference__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_difference__2d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_expression_parametric__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_expression_parametric__3d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_expression_vector_valued__1d_cube_yaspgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_expression_vector_valued__3d_cube_yaspgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_expression_vector_valued__3d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_flattop__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_flux_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_function__3d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_grid_function__1d_cube_onedgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_generic_grid_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_indicator_function__1d_cube_onedgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_indicator_grid_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_spe10_model1__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_sum_for_functions__3d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_visualization__2d_simplex_albertagrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_visualization__2d_simplex_uggrid PROPERTIES LABELS "builder_1")
-set_tests_properties(test_visualization__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_1")
-add_custom_target(test_binaries_builder_2
-                  DEPENDS headercheck__dune_xt_functions_exceptions.hh
-                          headercheck__dune_xt_functions_expression.hh
-                          headercheck__dune_xt_functions_expression_parametric.hh
-                          headercheck__dune_xt_functions_interfaces_flux-function.hh
-                          headercheck__dune_xt_functions_interfaces_grid-function.hh
-                          headercheck__python_dune_xt_functions_interfaces.hh
-                          test_ESV2007_cutoff_1d__1d_cube_onedgrid
-                          test_ESV2007_cutoff_2d_3d__3d_cube_alunonconformgrid
-                          test_ESV2007_force__2d_cube_alunonconformgrid
-                          test_ESV2007_force__2d_simplex_uggrid
-                          test_checkerboard__3d_simplex_albertagrid
-                          test_difference__3d_simplex_albertagrid
-                          test_expression_matrix_valued__2d_simplex_uggrid
-                          test_expression_matrix_valued__3d_simplex_uggrid
-                          test_expression_parametric__1d_cube_onedgrid
-                          test_expression_parametric__3d_simplex_albertagrid
-                          test_expression_vector_valued__2d_simplex_alunonconformgrid
-                          test_generic_flux_function__3d_simplex_uggrid
-                          test_generic_function__3d_simplex_albertagrid
-                          test_generic_grid_function__2d_simplex_uggrid
-                          test_indicator_function__2d_cube_alunonconformgrid
-                          test_indicator_function__3d_simplex_uggrid
-                          test_indicator_grid_function__1d_cube_onedgrid
-                          test_indicator_grid_function__3d_cube_yaspgrid
-                          test_product__1d_cube_onedgrid
-                          test_product__2d_simplex_aluconformgrid
-                          test_product__2d_simplex_alunonconformgrid
-                          test_product__2d_simplex_uggrid
-                          test_product__3d_simplex_albertagrid
-                          test_product__3d_simplex_alunonconformgrid
-                          test_spe10_model2__3d_simplex_albertagrid
-                          test_spe10_model2__3d_simplex_aluconformgrid
-                          test_sum_for_functions__1d_cube_yaspgrid
-                          test_sum_for_grid_functions__2d_simplex_aluconformgrid
-                          test_sum_for_grid_functions__3d_simplex_albertagrid
-                          test_visualization__2d_cube_alunonconformgrid
-                          test_visualization__2d_simplex_alunonconformgrid)
-set_tests_properties(test_ESV2007_cutoff_1d__1d_cube_onedgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_ESV2007_force__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_ESV2007_force__2d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_checkerboard__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_difference__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_expression_matrix_valued__2d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_expression_matrix_valued__3d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_expression_parametric__1d_cube_onedgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_expression_parametric__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_expression_vector_valued__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_generic_flux_function__3d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_generic_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_generic_grid_function__2d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_indicator_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_indicator_function__3d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_indicator_grid_function__1d_cube_onedgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_indicator_grid_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__1d_cube_onedgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__2d_simplex_uggrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_product__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_spe10_model2__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_spe10_model2__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_sum_for_functions__1d_cube_yaspgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_sum_for_grid_functions__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_sum_for_grid_functions__3d_simplex_albertagrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_visualization__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_2")
-set_tests_properties(test_visualization__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_2")
-add_custom_target(test_binaries_builder_3
-                  DEPENDS headercheck__dune_xt_functions_base_composition.hh
-                          headercheck__dune_xt_functions_base_sliced.hh
-                          headercheck__dune_xt_functions_base_transformed.hh
-                          headercheck__python_dune_xt_functions_constant.hh
-                          test_ESV2007_cutoff_1d__1d_cube_yaspgrid
-                          test_ESV2007_cutoff_2d_3d__2d_simplex_albertagrid
-                          test_ESV2007_exact_solution__2d_cube_yaspgrid
-                          test_ESV2007_force__2d_simplex_albertagrid
-                          test_constant__2d_simplex_uggrid
-                          test_expression_matrix_valued__1d_cube_onedgrid
-                          test_expression_matrix_valued__2d_cube_alunonconformgrid
-                          test_expression_matrix_valued__2d_simplex_albertagrid
-                          test_expression_matrix_valued__3d_cube_yaspgrid
-                          test_expression_matrix_valued__3d_simplex_alunonconformgrid
-                          test_expression_vector_valued__2d_cube_yaspgrid
-                          test_expression_vector_valued__2d_simplex_albertagrid
-                          test_expression_vector_valued__3d_simplex_alunonconformgrid
-                          test_generic_flux_function__1d_cube_yaspgrid
-                          test_generic_flux_function__3d_cube_alunonconformgrid
-                          test_generic_flux_function__3d_simplex_albertagrid
-                          test_generic_function__1d_cube_onedgrid
-                          test_generic_function__2d_cube_alunonconformgrid
-                          test_generic_function__3d_cube_yaspgrid
-                          test_generic_function__3d_simplex_alunonconformgrid
-                          test_generic_grid_function__3d_cube_yaspgrid
-                          test_indicator_function__2d_simplex_alunonconformgrid
-                          test_indicator_function__2d_simplex_uggrid
-                          test_indicator_function__3d_simplex_albertagrid
-                          test_indicator_grid_function__1d_cube_yaspgrid
-                          test_indicator_grid_function__2d_simplex_albertagrid
-                          test_indicator_grid_function__3d_simplex_aluconformgrid
-                          test_product__2d_simplex_albertagrid
-                          test_product__3d_cube_alunonconformgrid
-                          test_spe10_model1__2d_cube_alunonconformgrid
-                          test_spe10_model1__2d_cube_yaspgrid
-                          test_spe10_model2__3d_simplex_alunonconformgrid
-                          test_sum_for_grid_functions__2d_simplex_uggrid
-                          test_visualization__3d_simplex_aluconformgrid)
-set_tests_properties(test_ESV2007_cutoff_1d__1d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_ESV2007_exact_solution__2d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_ESV2007_force__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_constant__2d_simplex_uggrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_matrix_valued__1d_cube_onedgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_matrix_valued__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_matrix_valued__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_matrix_valued__3d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_matrix_valued__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_vector_valued__2d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_vector_valued__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_expression_vector_valued__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_flux_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_flux_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_flux_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_function__1d_cube_onedgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_generic_grid_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_function__2d_simplex_uggrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_grid_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_grid_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_indicator_grid_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_product__2d_simplex_albertagrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_product__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_spe10_model1__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_spe10_model1__2d_cube_yaspgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_spe10_model2__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_sum_for_grid_functions__2d_simplex_uggrid PROPERTIES LABELS "builder_3")
-set_tests_properties(test_visualization__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_3")
-add_custom_target(test_binaries_builder_4
-                  DEPENDS headercheck__dune_xt_functions_base_combined-functions.hh
-                          headercheck__dune_xt_functions_base_derivatives-of-element-functions.hh
-                          headercheck__dune_xt_functions_expression_default.hh
-                          headercheck__dune_xt_functions_generic_function.hh
-                          headercheck__dune_xt_functions_spe10_model2.hh
-                          headercheck__python_dune_xt_functions_checkerboard.hh
-                          test_ESV2007_cutoff_2d_3d__2d_simplex_aluconformgrid
-                          test_ESV2007_cutoff_2d_3d__2d_simplex_uggrid
-                          test_checkerboard__2d_cube_alunonconformgrid
-                          test_checkerboard__2d_cube_yaspgrid
-                          test_checkerboard__3d_cube_yaspgrid
-                          test_checkerboard__3d_simplex_alunonconformgrid
-                          test_difference__2d_simplex_albertagrid
-                          test_difference__3d_simplex_uggrid
-                          test_expression_matrix_valued__3d_simplex_albertagrid
-                          test_expression_matrix_valued__3d_simplex_aluconformgrid
-                          test_expression_parametric__2d_simplex_alunonconformgrid
-                          test_expression_parametric__2d_simplex_uggrid
-                          test_expression_parametric__3d_simplex_alunonconformgrid
-                          test_expression_vector_valued__2d_cube_alunonconformgrid
-                          test_flattop__1d_cube_onedgrid
-                          test_flattop__2d_simplex_uggrid
-                          test_flattop__3d_simplex_albertagrid
-                          test_generic_function__2d_simplex_alunonconformgrid
-                          test_generic_grid_function__1d_cube_yaspgrid
-                          test_indicator_function__3d_cube_alunonconformgrid
-                          test_indicator_grid_function__2d_simplex_uggrid
-                          test_product__1d_cube_yaspgrid
-                          test_product__3d_simplex_aluconformgrid
-                          test_sum_for_functions__1d_cube_onedgrid
-                          test_sum_for_functions__2d_simplex_albertagrid
-                          test_sum_for_functions__3d_cube_alunonconformgrid
-                          test_sum_for_grid_functions__1d_cube_onedgrid
-                          test_sum_for_grid_functions__2d_simplex_alunonconformgrid
-                          test_sum_for_grid_functions__3d_cube_alunonconformgrid
-                          test_sum_for_grid_functions__3d_simplex_uggrid
-                          test_visualization__2d_cube_yaspgrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_checkerboard__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_checkerboard__2d_cube_yaspgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_checkerboard__3d_cube_yaspgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_checkerboard__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_difference__2d_simplex_albertagrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_difference__3d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_matrix_valued__3d_simplex_albertagrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_matrix_valued__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_parametric__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_parametric__2d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_parametric__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_expression_vector_valued__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_flattop__1d_cube_onedgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_flattop__2d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_flattop__3d_simplex_albertagrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_generic_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_generic_grid_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_indicator_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_indicator_grid_function__2d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_product__1d_cube_yaspgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_product__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_functions__1d_cube_onedgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_functions__2d_simplex_albertagrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_functions__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_grid_functions__1d_cube_onedgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_grid_functions__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_grid_functions__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_sum_for_grid_functions__3d_simplex_uggrid PROPERTIES LABELS "builder_4")
-set_tests_properties(test_visualization__2d_cube_yaspgrid PROPERTIES LABELS "builder_4")
-add_custom_target(test_binaries_builder_5
-                  DEPENDS headercheck__dune_xt_functions_ESV2007.hh
-                          headercheck__dune_xt_functions_derivatives.hh
-                          headercheck__dune_xt_functions_expression_base.hh
-                          headercheck__dune_xt_functions_expression_mathexpr.hh
-                          headercheck__dune_xt_functions_spe10_model1.hh
-                          test_ESV2007_cutoff_2d_3d__2d_cube_alunonconformgrid
-                          test_ESV2007_cutoff_2d_3d__2d_cube_yaspgrid
-                          test_checkerboard__1d_cube_onedgrid
-                          test_checkerboard__1d_cube_yaspgrid
-                          test_checkerboard__2d_simplex_uggrid
-                          test_constant__3d_simplex_alunonconformgrid
-                          test_difference__3d_simplex_alunonconformgrid
-                          test_expression_matrix_valued__2d_simplex_alunonconformgrid
-                          test_expression_parametric__2d_cube_alunonconformgrid
-                          test_expression_parametric__3d_cube_alunonconformgrid
-                          test_expression_vector_valued__2d_simplex_aluconformgrid
-                          test_expression_vector_valued__3d_cube_alunonconformgrid
-                          test_flattop__3d_cube_yaspgrid
-                          test_flattop__3d_simplex_aluconformgrid
-                          test_flattop__3d_simplex_uggrid
-                          test_generic_flux_function__3d_cube_yaspgrid
-                          test_generic_function__3d_cube_alunonconformgrid
-                          test_generic_grid_function__2d_cube_alunonconformgrid
-                          test_generic_grid_function__2d_cube_yaspgrid
-                          test_generic_grid_function__2d_simplex_aluconformgrid
-                          test_generic_grid_function__3d_simplex_alunonconformgrid
-                          test_indicator_function__3d_simplex_aluconformgrid
-                          test_indicator_grid_function__2d_cube_yaspgrid
-                          test_indicator_grid_function__2d_simplex_aluconformgrid
-                          test_indicator_grid_function__3d_simplex_albertagrid
-                          test_product__2d_cube_yaspgrid
-                          test_product__3d_cube_yaspgrid
-                          test_spe10_model2__3d_cube_alunonconformgrid
-                          test_sum_for_functions__3d_simplex_alunonconformgrid
-                          test_sum_for_grid_functions__1d_cube_yaspgrid
-                          test_visualization__1d_cube_yaspgrid
-                          test_visualization__3d_cube_alunonconformgrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_checkerboard__1d_cube_onedgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_checkerboard__1d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_checkerboard__2d_simplex_uggrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_constant__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_difference__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_expression_matrix_valued__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_expression_parametric__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_expression_parametric__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_expression_vector_valued__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_expression_vector_valued__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_flattop__3d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_flattop__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_flattop__3d_simplex_uggrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_flux_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_grid_function__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_grid_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_grid_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_generic_grid_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_indicator_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_indicator_grid_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_indicator_grid_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_indicator_grid_function__3d_simplex_albertagrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_product__2d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_product__3d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_spe10_model2__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_sum_for_functions__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_sum_for_grid_functions__1d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_visualization__1d_cube_yaspgrid PROPERTIES LABELS "builder_5")
-set_tests_properties(test_visualization__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_5")
-add_custom_target(test_binaries_builder_6
-                  DEPENDS headercheck__dune_xt_functions_base_combined-element-functions.hh
-                          headercheck__dune_xt_functions_base_combined-grid-functions.hh
-                          headercheck__dune_xt_functions_flattop.hh
-                          headercheck__dune_xt_functions_generic_grid-function.hh
-                          headercheck__python_dune_xt_functions_indicator.hh
-                          test_ESV2007_cutoff_2d_3d__2d_simplex_alunonconformgrid
-                          test_ESV2007_cutoff_2d_3d__3d_cube_yaspgrid
-                          test_ESV2007_exact_solution__2d_simplex_uggrid
-                          test_checkerboard__2d_simplex_albertagrid
-                          test_checkerboard__2d_simplex_alunonconformgrid
-                          test_checkerboard__3d_simplex_aluconformgrid
-                          test_checkerboard__3d_simplex_uggrid
-                          test_constant__2d_simplex_albertagrid
-                          test_constant__2d_simplex_aluconformgrid
-                          test_constant__3d_simplex_aluconformgrid
-                          test_difference__3d_simplex_aluconformgrid
-                          test_empty
-                          test_expression_matrix_valued__3d_cube_alunonconformgrid
-                          test_expression_parametric__2d_cube_yaspgrid
-                          test_expression_parametric__2d_simplex_albertagrid
-                          test_expression_vector_valued__2d_simplex_uggrid
-                          test_generic_function__2d_cube_yaspgrid
-                          test_generic_function__2d_simplex_uggrid
-                          test_indicator_function__2d_cube_yaspgrid
-                          test_indicator_function__2d_simplex_aluconformgrid
-                          test_indicator_grid_function__3d_simplex_alunonconformgrid
-                          test_indicator_grid_function__3d_simplex_uggrid
-                          test_product__3d_simplex_uggrid
-                          test_spe10_model1__2d_simplex_alunonconformgrid
-                          test_spe10_model1__2d_simplex_uggrid
-                          test_spe10_model2__3d_cube_yaspgrid
-                          test_sum_for_functions__2d_cube_alunonconformgrid
-                          test_sum_for_functions__2d_simplex_aluconformgrid
-                          test_sum_for_grid_functions__2d_simplex_albertagrid
-                          test_sum_for_grid_functions__3d_cube_yaspgrid
-                          test_sum_for_grid_functions__3d_simplex_aluconformgrid
-                          test_visualization__3d_cube_yaspgrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_ESV2007_exact_solution__2d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_checkerboard__2d_simplex_albertagrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_checkerboard__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_checkerboard__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_checkerboard__3d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_constant__2d_simplex_albertagrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_constant__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_constant__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_difference__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_empty PROPERTIES LABELS "builder_6")
-set_tests_properties(test_expression_matrix_valued__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_expression_parametric__2d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_expression_parametric__2d_simplex_albertagrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_expression_vector_valued__2d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_generic_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_generic_function__2d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_indicator_function__2d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_indicator_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_indicator_grid_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_indicator_grid_function__3d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_product__3d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_spe10_model1__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_spe10_model1__2d_simplex_uggrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_spe10_model2__3d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_sum_for_functions__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_sum_for_functions__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_sum_for_grid_functions__2d_simplex_albertagrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_sum_for_grid_functions__3d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_sum_for_grid_functions__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_6")
-set_tests_properties(test_visualization__3d_cube_yaspgrid PROPERTIES LABELS "builder_6")
-add_custom_target(test_binaries_builder_7
-                  DEPENDS headercheck__dune_xt_functions_base_function-as-grid-function.hh
-                          headercheck__dune_xt_functions_checkerboard.hh
-                          headercheck__dune_xt_functions_generic_element-function.hh
-                          headercheck__dune_xt_functions_interfaces_function.hh
-                          headercheck__dune_xt_functions_type_traits.hh
-                          test_ESV2007_cutoff_2d_3d__3d_simplex_albertagrid
-                          test_ESV2007_cutoff_2d_3d__3d_simplex_uggrid
-                          test_ESV2007_exact_solution__2d_cube_alunonconformgrid
-                          test_constant__1d_cube_yaspgrid
-                          test_difference__2d_cube_alunonconformgrid
-                          test_difference__2d_cube_yaspgrid
-                          test_difference__2d_simplex_alunonconformgrid
-                          test_difference__3d_cube_yaspgrid
-                          test_expression_matrix_valued__1d_cube_yaspgrid
-                          test_expression_parametric__1d_cube_yaspgrid
-                          test_expression_parametric__3d_simplex_aluconformgrid
-                          test_expression_vector_valued__1d_cube_onedgrid
-                          test_expression_vector_valued__3d_simplex_albertagrid
-                          test_flattop__2d_cube_alunonconformgrid
-                          test_flattop__2d_simplex_albertagrid
-                          test_flattop__2d_simplex_aluconformgrid
-                          test_flattop__3d_cube_alunonconformgrid
-                          test_generic_function__2d_simplex_aluconformgrid
-                          test_generic_grid_function__3d_cube_alunonconformgrid
-                          test_generic_grid_function__3d_simplex_aluconformgrid
-                          test_indicator_function__1d_cube_yaspgrid
-                          test_indicator_function__2d_simplex_albertagrid
-                          test_indicator_function__3d_cube_yaspgrid
-                          test_indicator_function__3d_simplex_alunonconformgrid
-                          test_indicator_grid_function__2d_simplex_alunonconformgrid
-                          test_product__2d_cube_alunonconformgrid
-                          test_spe10_model1__2d_simplex_albertagrid
-                          test_sum_for_functions__2d_cube_yaspgrid
-                          test_sum_for_functions__2d_simplex_alunonconformgrid
-                          test_sum_for_functions__3d_simplex_aluconformgrid
-                          test_sum_for_grid_functions__2d_cube_alunonconformgrid
-                          test_sum_for_grid_functions__2d_cube_yaspgrid
-                          test_visualization__1d_cube_onedgrid)
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_albertagrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_ESV2007_cutoff_2d_3d__3d_simplex_uggrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_ESV2007_exact_solution__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_constant__1d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_difference__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_difference__2d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_difference__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_difference__3d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_expression_matrix_valued__1d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_expression_parametric__1d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_expression_parametric__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_expression_vector_valued__1d_cube_onedgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_expression_vector_valued__3d_simplex_albertagrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_flattop__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_flattop__2d_simplex_albertagrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_flattop__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_flattop__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_generic_function__2d_simplex_aluconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_generic_grid_function__3d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_generic_grid_function__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_indicator_function__1d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_indicator_function__2d_simplex_albertagrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_indicator_function__3d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_indicator_function__3d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_indicator_grid_function__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_product__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_spe10_model1__2d_simplex_albertagrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_sum_for_functions__2d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_sum_for_functions__2d_simplex_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_sum_for_functions__3d_simplex_aluconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_sum_for_grid_functions__2d_cube_alunonconformgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_sum_for_grid_functions__2d_cube_yaspgrid PROPERTIES LABELS "builder_7")
-set_tests_properties(test_visualization__1d_cube_onedgrid PROPERTIES LABELS "builder_7")
diff --git a/dune/xt/test/la/CMakeLists.txt b/dune/xt/test/la/CMakeLists.txt
index e534d9ed8d5ec26fbd542580afd78ef2bd9e4474..1b9da91660ea5250f2bb03119be9536a29ed4001 100644
--- a/dune/xt/test/la/CMakeLists.txt
+++ b/dune/xt/test/la/CMakeLists.txt
@@ -10,4 +10,3 @@
 #   René Fritze     (2018 - 2019)
 #   Tobias Leibner  (2020)
 # ~~~
-
diff --git a/dune/xt/test/la/builder_definitions.cmake b/dune/xt/test/la/builder_definitions.cmake
deleted file mode 100644
index 127f5721862a05c708738f040064fd530ef6d8ea..0000000000000000000000000000000000000000
--- a/dune/xt/test/la/builder_definitions.cmake
+++ /dev/null
@@ -1,118 +0,0 @@
-set(DXT_BIN_COUNT "2" CACHE STRING "number of bins for test targets")
-add_custom_target(test_binaries_builder_0
-                  DEPENDS headercheck__dune_xt_la_container_common.hh
-                          headercheck__dune_xt_la_container_common_matrix.hh
-                          headercheck__dune_xt_la_container_common_matrix_dense.hh
-                          headercheck__dune_xt_la_container_common_vector.hh
-                          headercheck__dune_xt_la_container_common_vector_dense.hh
-                          headercheck__dune_xt_la_container_conversion.hh
-                          headercheck__dune_xt_la_container_eigen_base.hh
-                          headercheck__dune_xt_la_container_eigen_dense.hh
-                          headercheck__dune_xt_la_container_eye-matrix.hh
-                          headercheck__dune_xt_la_container_io.hh
-                          headercheck__dune_xt_la_container_matrix-interface.hh
-                          headercheck__dune_xt_la_container_pattern.hh
-                          headercheck__dune_xt_la_container_vector-array_list.hh
-                          headercheck__dune_xt_la_eigen-solver_default.hh
-                          headercheck__dune_xt_la_eigen-solver_internal_lapacke.hh
-                          headercheck__dune_xt_la_exceptions.hh
-                          headercheck__dune_xt_la_matrix-inverter_default.hh
-                          headercheck__dune_xt_la_matrix-inverter_eigen.hh
-                          headercheck__dune_xt_la_matrix-inverter_fmatrix.hh
-                          headercheck__dune_xt_la_matrix-inverter_internal_eigen.hh
-                          headercheck__dune_xt_la_solver.hh
-                          headercheck__dune_xt_la_solver_eigen.hh
-                          headercheck__dune_xt_la_solver_fasp.hh
-                          headercheck__dune_xt_la_solver_istl.hh
-                          headercheck__dune_xt_la_solver_istl_amg.hh
-                          headercheck__dune_xt_la_solver_istl_preconditioners.hh
-                          headercheck__dune_xt_la_solver_istl_schurcomplement.hh
-                          headercheck__dune_xt_la_test_container.hh
-                          headercheck__dune_xt_la_test_eigensolver.hh
-                          headercheck__dune_xt_la_type_traits.hh
-                          headercheck__python_dune_xt_la_container.bindings.hh
-                          headercheck__python_dune_xt_la_container_container-interface.hh
-                          headercheck__python_dune_xt_la_container_vector-interface.hh
-                          test_algorithms_qr_5x5
-                          test_algorithms_solve_sym_tridiag_posdef
-                          test_convert
-                          test_eigensolver_for_real_matrix_with_distinct_real_evs
-                          test_eigensolver_for_real_matrix_with_real_evs_from_2d_euler_equations
-                          test_eigensolver_for_real_matrix_with_real_evs_from_3d_pointsource
-                          test_empty
-                          test_matrix_view
-                          test_matrixinverter_for_complex_matrix
-                          test_matrixinverter_for_complex_matrix_2
-                          test_saddlepoint)
-set_tests_properties(test_algorithms_qr_5x5 PROPERTIES LABELS "builder_0")
-set_tests_properties(test_algorithms_solve_sym_tridiag_posdef PROPERTIES LABELS "builder_0")
-set_tests_properties(test_convert PROPERTIES LABELS "builder_0")
-set_tests_properties(test_eigensolver_for_real_matrix_with_distinct_real_evs PROPERTIES LABELS "builder_0")
-set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs_from_2d_euler_equations
-                     PROPERTIES LABELS "builder_0")
-set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs_from_3d_pointsource PROPERTIES LABELS "builder_0")
-set_tests_properties(test_empty PROPERTIES LABELS "builder_0")
-set_tests_properties(test_matrix_view PROPERTIES LABELS "builder_0")
-set_tests_properties(test_matrixinverter_for_complex_matrix PROPERTIES LABELS "builder_0")
-set_tests_properties(test_matrixinverter_for_complex_matrix_2 PROPERTIES LABELS "builder_0")
-set_tests_properties(test_saddlepoint PROPERTIES LABELS "builder_0")
-add_custom_target(test_binaries_builder_1
-                  DEPENDS headercheck__dune_xt_la_algorithms.hh
-                          headercheck__dune_xt_la_algorithms_cholesky.hh
-                          headercheck__dune_xt_la_algorithms_qr.hh
-                          headercheck__dune_xt_la_algorithms_solve_sym_tridiag_posdef.hh
-                          headercheck__dune_xt_la_algorithms_triangular_solves.hh
-                          headercheck__dune_xt_la_container.hh
-                          headercheck__dune_xt_la_container_common_matrix_sparse.hh
-                          headercheck__dune_xt_la_container_common_vector_sparse.hh
-                          headercheck__dune_xt_la_container_container-interface.hh
-                          headercheck__dune_xt_la_container_eigen.hh
-                          headercheck__dune_xt_la_container_eigen_sparse.hh
-                          headercheck__dune_xt_la_container_interfaces.hh
-                          headercheck__dune_xt_la_container_istl.hh
-                          headercheck__dune_xt_la_container_matrix-view.hh
-                          headercheck__dune_xt_la_container_vector-array_interface.hh
-                          headercheck__dune_xt_la_container_vector-interface-internal.hh
-                          headercheck__dune_xt_la_container_vector-interface.hh
-                          headercheck__dune_xt_la_container_vector-view.hh
-                          headercheck__dune_xt_la_eigen-solver.hh
-                          headercheck__dune_xt_la_eigen-solver_eigen.hh
-                          headercheck__dune_xt_la_eigen-solver_fmatrix.hh
-                          headercheck__dune_xt_la_eigen-solver_internal_base.hh
-                          headercheck__dune_xt_la_eigen-solver_internal_eigen.hh
-                          headercheck__dune_xt_la_eigen-solver_internal_numpy.hh
-                          headercheck__dune_xt_la_eigen-solver_internal_shifted-qr.hh
-                          headercheck__dune_xt_la_matrix-inverter.hh
-                          headercheck__dune_xt_la_matrix-inverter_internal_base.hh
-                          headercheck__dune_xt_la_solver_common.hh
-                          headercheck__dune_xt_la_solver_istl_saddlepoint.hh
-                          headercheck__dune_xt_la_solver_view.hh
-                          headercheck__dune_xt_la_test_matrixinverter.hh
-                          headercheck__python_dune_xt_la_container_matrix-interface.hh
-                          headercheck__python_dune_xt_la_container_pattern.hh
-                          test_algorithms_cholesky
-                          test_algorithms_qr_5x3
-                          test_algorithms_qr_block_2x3x3
-                          test_algorithms_triangular_solves_2x2
-                          test_algorithms_triangular_solves_3x3
-                          test_container
-                          test_container_matrix
-                          test_container_vector
-                          test_eigensolver_for_matrix_from_eigens_example
-                          test_eigensolver_for_real_matrix_with_complex_evs
-                          test_eigensolver_for_real_matrix_with_real_evs
-                          test_matrixinverter_for_real_matrix_from_3d_pointsource
-                          test_pattern)
-set_tests_properties(test_algorithms_cholesky PROPERTIES LABELS "builder_1")
-set_tests_properties(test_algorithms_qr_5x3 PROPERTIES LABELS "builder_1")
-set_tests_properties(test_algorithms_qr_block_2x3x3 PROPERTIES LABELS "builder_1")
-set_tests_properties(test_algorithms_triangular_solves_2x2 PROPERTIES LABELS "builder_1")
-set_tests_properties(test_algorithms_triangular_solves_3x3 PROPERTIES LABELS "builder_1")
-set_tests_properties(test_container PROPERTIES LABELS "builder_1")
-set_tests_properties(test_container_matrix PROPERTIES LABELS "builder_1")
-set_tests_properties(test_container_vector PROPERTIES LABELS "builder_1")
-set_tests_properties(test_eigensolver_for_matrix_from_eigens_example PROPERTIES LABELS "builder_1")
-set_tests_properties(test_eigensolver_for_real_matrix_with_complex_evs PROPERTIES LABELS "builder_1")
-set_tests_properties(test_eigensolver_for_real_matrix_with_real_evs PROPERTIES LABELS "builder_1")
-set_tests_properties(test_matrixinverter_for_real_matrix_from_3d_pointsource PROPERTIES LABELS "builder_1")
-set_tests_properties(test_pattern PROPERTIES LABELS "builder_1")
diff --git a/python/scripts/CMakeLists.txt b/python/scripts/CMakeLists.txt
index 0cbecd1eb58247ac09d181aa9136b80767b5e677..20dc2369d4316c991ad68ff6aa7040016abc3cc3 100644
--- a/python/scripts/CMakeLists.txt
+++ b/python/scripts/CMakeLists.txt
@@ -11,4 +11,3 @@
 #
 # do not delete
 # ~~~
-
diff --git a/python/wrapper/CMakeLists.txt b/python/wrapper/CMakeLists.txt
index 0cbecd1eb58247ac09d181aa9136b80767b5e677..20dc2369d4316c991ad68ff6aa7040016abc3cc3 100644
--- a/python/wrapper/CMakeLists.txt
+++ b/python/wrapper/CMakeLists.txt
@@ -11,4 +11,3 @@
 #
 # do not delete
 # ~~~
-