diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5a074d945ca61cb4414d7f6d2b958b1423b8286f..7559bf2824b2d2db24ec4915667a4ba4a0fc073e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -15,6 +15,28 @@ stages:
   variables:
     DOCKER_TLS_CERTDIR: "/certs"
 
+
+# Theodolite Docs
+
+build-docs:
+  stage: build
+  image: ruby:2.7
+  tags:
+    - exec-docker
+  cache:
+    paths:
+      - docs/vendor
+  before_script:
+    - cd docs
+    - gem install bundler
+    - bundle config set --local path 'vendor'
+    - bundle install
+  script: bundle exec jekyll build
+  artifacts:
+    paths:
+      - docs/_site
+
+
 # Theodolite Helm Chart
 
 lint-helm:
@@ -227,7 +249,7 @@ deploy-uc4-load-generator:
       - .gradle/caches
   before_script:
     - export GRADLE_USER_HOME=`pwd`/.gradle
-    - cd theodolite-quarkus
+    - cd theodolite
 
 build-theodolite-jvm:
   stage: build
@@ -235,8 +257,8 @@ build-theodolite-jvm:
   script: ./gradlew --build-cache assemble
   artifacts:
     paths:
-      - "theodolite-quarkus/build/lib/*"
-      - "theodolite-quarkus/build/*-runner.jar"
+      - "theodolite/build/lib/*"
+      - "theodolite/build/*-runner.jar"
     expire_in: 6 hours
 
 build-theodolite-native:
@@ -247,7 +269,7 @@ build-theodolite-native:
   when: manual
   artifacts:
     paths:
-      - "theodolite-quarkus/build/*-runner"
+      - "theodolite/build/*-runner"
     expire_in: 6 hours
 
 test-theodolite:
@@ -260,7 +282,7 @@ test-theodolite:
   artifacts:
     reports:
       junit:
-        - "theodolite-quarkus/**/build/test-results/test/TEST-*.xml"
+        - "theodolite/**/build/test-results/test/TEST-*.xml"
 
 # Disabled for now
 .ktlint-theodolite:
@@ -303,7 +325,7 @@ deploy-theodolite:
     - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
       when: always
     - changes:
-      - theodolite-quarkus/**/*
+      - theodolite/**/*
       if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
       when: always
     - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
diff --git a/docs/.gitignore b/docs/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..f40fbd8ba564ea28e0a2501e2921909467b39887
--- /dev/null
+++ b/docs/.gitignore
@@ -0,0 +1,5 @@
+_site
+.sass-cache
+.jekyll-cache
+.jekyll-metadata
+vendor
diff --git a/docs/Gemfile b/docs/Gemfile
new file mode 100644
index 0000000000000000000000000000000000000000..ef3436c16b884aaca76405cbf09fef1a42b7be1e
--- /dev/null
+++ b/docs/Gemfile
@@ -0,0 +1,31 @@
+source "https://rubygems.org"
+# Hello! This is where you manage which Jekyll version is used to run.
+# When you want to use a different version, change it below, save the
+# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
+#
+#     bundle exec jekyll serve
+#
+# This will help ensure the proper Jekyll version is running.
+# Happy Jekylling!
+#gem "jekyll", "~> 4.2.0"
+# This is the default theme for new Jekyll sites. You may change this to anything you like.
+gem "minima", "~> 2.5"
+# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
+# uncomment the line below. To upgrade, run `bundle update github-pages`.
+# gem "github-pages", group: :jekyll_plugins
+gem "github-pages", "~> 215", group: :jekyll_plugins
+# If you have any plugins, put them here!
+#group :jekyll_plugins do
+  #gem "jekyll-feed", "~> 0.12"
+#end
+
+# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
+# and associated library.
+platforms :mingw, :x64_mingw, :mswin, :jruby do
+  gem "tzinfo", "~> 1.2"
+  gem "tzinfo-data"
+end
+
+# Performance-booster for watching directories on Windows
+gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
+
diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock
new file mode 100644
index 0000000000000000000000000000000000000000..c02c195db7e5a655feab6e738fb4c4f0ba58af33
--- /dev/null
+++ b/docs/Gemfile.lock
@@ -0,0 +1,276 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    activesupport (6.0.4)
+      concurrent-ruby (~> 1.0, >= 1.0.2)
+      i18n (>= 0.7, < 2)
+      minitest (~> 5.1)
+      tzinfo (~> 1.1)
+      zeitwerk (~> 2.2, >= 2.2.2)
+    addressable (2.7.0)
+      public_suffix (>= 2.0.2, < 5.0)
+    coffee-script (2.4.1)
+      coffee-script-source
+      execjs
+    coffee-script-source (1.11.1)
+    colorator (1.1.0)
+    commonmarker (0.17.13)
+      ruby-enum (~> 0.5)
+    concurrent-ruby (1.1.9)
+    dnsruby (1.61.7)
+      simpleidn (~> 0.1)
+    em-websocket (0.5.2)
+      eventmachine (>= 0.12.9)
+      http_parser.rb (~> 0.6.0)
+    ethon (0.14.0)
+      ffi (>= 1.15.0)
+    eventmachine (1.2.7)
+    execjs (2.8.1)
+    faraday (1.4.3)
+      faraday-em_http (~> 1.0)
+      faraday-em_synchrony (~> 1.0)
+      faraday-excon (~> 1.1)
+      faraday-net_http (~> 1.0)
+      faraday-net_http_persistent (~> 1.1)
+      multipart-post (>= 1.2, < 3)
+      ruby2_keywords (>= 0.0.4)
+    faraday-em_http (1.0.0)
+    faraday-em_synchrony (1.0.0)
+    faraday-excon (1.1.0)
+    faraday-net_http (1.0.1)
+    faraday-net_http_persistent (1.1.0)
+    ffi (1.15.3)
+    forwardable-extended (2.6.0)
+    gemoji (3.0.1)
+    github-pages (215)
+      github-pages-health-check (= 1.17.2)
+      jekyll (= 3.9.0)
+      jekyll-avatar (= 0.7.0)
+      jekyll-coffeescript (= 1.1.1)
+      jekyll-commonmark-ghpages (= 0.1.6)
+      jekyll-default-layout (= 0.1.4)
+      jekyll-feed (= 0.15.1)
+      jekyll-gist (= 1.5.0)
+      jekyll-github-metadata (= 2.13.0)
+      jekyll-mentions (= 1.6.0)
+      jekyll-optional-front-matter (= 0.3.2)
+      jekyll-paginate (= 1.1.0)
+      jekyll-readme-index (= 0.3.0)
+      jekyll-redirect-from (= 0.16.0)
+      jekyll-relative-links (= 0.6.1)
+      jekyll-remote-theme (= 0.4.3)
+      jekyll-sass-converter (= 1.5.2)
+      jekyll-seo-tag (= 2.7.1)
+      jekyll-sitemap (= 1.4.0)
+      jekyll-swiss (= 1.0.0)
+      jekyll-theme-architect (= 0.1.1)
+      jekyll-theme-cayman (= 0.1.1)
+      jekyll-theme-dinky (= 0.1.1)
+      jekyll-theme-hacker (= 0.1.2)
+      jekyll-theme-leap-day (= 0.1.1)
+      jekyll-theme-merlot (= 0.1.1)
+      jekyll-theme-midnight (= 0.1.1)
+      jekyll-theme-minimal (= 0.1.1)
+      jekyll-theme-modernist (= 0.1.1)
+      jekyll-theme-primer (= 0.5.4)
+      jekyll-theme-slate (= 0.1.1)
+      jekyll-theme-tactile (= 0.1.1)
+      jekyll-theme-time-machine (= 0.1.1)
+      jekyll-titles-from-headings (= 0.5.3)
+      jemoji (= 0.12.0)
+      kramdown (= 2.3.1)
+      kramdown-parser-gfm (= 1.1.0)
+      liquid (= 4.0.3)
+      mercenary (~> 0.3)
+      minima (= 2.5.1)
+      nokogiri (>= 1.10.4, < 2.0)
+      rouge (= 3.26.0)
+      terminal-table (~> 1.4)
+    github-pages-health-check (1.17.2)
+      addressable (~> 2.3)
+      dnsruby (~> 1.60)
+      octokit (~> 4.0)
+      public_suffix (>= 2.0.2, < 5.0)
+      typhoeus (~> 1.3)
+    html-pipeline (2.14.0)
+      activesupport (>= 2)
+      nokogiri (>= 1.4)
+    http_parser.rb (0.6.0)
+    i18n (0.9.5)
+      concurrent-ruby (~> 1.0)
+    jekyll (3.9.0)
+      addressable (~> 2.4)
+      colorator (~> 1.0)
+      em-websocket (~> 0.5)
+      i18n (~> 0.7)
+      jekyll-sass-converter (~> 1.0)
+      jekyll-watch (~> 2.0)
+      kramdown (>= 1.17, < 3)
+      liquid (~> 4.0)
+      mercenary (~> 0.3.3)
+      pathutil (~> 0.9)
+      rouge (>= 1.7, < 4)
+      safe_yaml (~> 1.0)
+    jekyll-avatar (0.7.0)
+      jekyll (>= 3.0, < 5.0)
+    jekyll-coffeescript (1.1.1)
+      coffee-script (~> 2.2)
+      coffee-script-source (~> 1.11.1)
+    jekyll-commonmark (1.3.1)
+      commonmarker (~> 0.14)
+      jekyll (>= 3.7, < 5.0)
+    jekyll-commonmark-ghpages (0.1.6)
+      commonmarker (~> 0.17.6)
+      jekyll-commonmark (~> 1.2)
+      rouge (>= 2.0, < 4.0)
+    jekyll-default-layout (0.1.4)
+      jekyll (~> 3.0)
+    jekyll-feed (0.15.1)
+      jekyll (>= 3.7, < 5.0)
+    jekyll-gist (1.5.0)
+      octokit (~> 4.2)
+    jekyll-github-metadata (2.13.0)
+      jekyll (>= 3.4, < 5.0)
+      octokit (~> 4.0, != 4.4.0)
+    jekyll-mentions (1.6.0)
+      html-pipeline (~> 2.3)
+      jekyll (>= 3.7, < 5.0)
+    jekyll-optional-front-matter (0.3.2)
+      jekyll (>= 3.0, < 5.0)
+    jekyll-paginate (1.1.0)
+    jekyll-readme-index (0.3.0)
+      jekyll (>= 3.0, < 5.0)
+    jekyll-redirect-from (0.16.0)
+      jekyll (>= 3.3, < 5.0)
+    jekyll-relative-links (0.6.1)
+      jekyll (>= 3.3, < 5.0)
+    jekyll-remote-theme (0.4.3)
+      addressable (~> 2.0)
+      jekyll (>= 3.5, < 5.0)
+      jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
+      rubyzip (>= 1.3.0, < 3.0)
+    jekyll-sass-converter (1.5.2)
+      sass (~> 3.4)
+    jekyll-seo-tag (2.7.1)
+      jekyll (>= 3.8, < 5.0)
+    jekyll-sitemap (1.4.0)
+      jekyll (>= 3.7, < 5.0)
+    jekyll-swiss (1.0.0)
+    jekyll-theme-architect (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-cayman (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-dinky (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-hacker (0.1.2)
+      jekyll (> 3.5, < 5.0)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-leap-day (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-merlot (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-midnight (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-minimal (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-modernist (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-primer (0.5.4)
+      jekyll (> 3.5, < 5.0)
+      jekyll-github-metadata (~> 2.9)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-slate (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-tactile (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-theme-time-machine (0.1.1)
+      jekyll (~> 3.5)
+      jekyll-seo-tag (~> 2.0)
+    jekyll-titles-from-headings (0.5.3)
+      jekyll (>= 3.3, < 5.0)
+    jekyll-watch (2.2.1)
+      listen (~> 3.0)
+    jemoji (0.12.0)
+      gemoji (~> 3.0)
+      html-pipeline (~> 2.2)
+      jekyll (>= 3.0, < 5.0)
+    kramdown (2.3.1)
+      rexml
+    kramdown-parser-gfm (1.1.0)
+      kramdown (~> 2.0)
+    liquid (4.0.3)
+    listen (3.5.1)
+      rb-fsevent (~> 0.10, >= 0.10.3)
+      rb-inotify (~> 0.9, >= 0.9.10)
+    mercenary (0.3.6)
+    minima (2.5.1)
+      jekyll (>= 3.5, < 5.0)
+      jekyll-feed (~> 0.9)
+      jekyll-seo-tag (~> 2.1)
+    minitest (5.14.4)
+    multipart-post (2.1.1)
+    nokogiri (1.11.7-x86_64-linux)
+      racc (~> 1.4)
+    octokit (4.21.0)
+      faraday (>= 0.9)
+      sawyer (~> 0.8.0, >= 0.5.3)
+    pathutil (0.16.2)
+      forwardable-extended (~> 2.6)
+    public_suffix (4.0.6)
+    racc (1.5.2)
+    rb-fsevent (0.11.0)
+    rb-inotify (0.10.1)
+      ffi (~> 1.0)
+    rexml (3.2.5)
+    rouge (3.26.0)
+    ruby-enum (0.9.0)
+      i18n
+    ruby2_keywords (0.0.4)
+    rubyzip (2.3.0)
+    safe_yaml (1.0.5)
+    sass (3.7.4)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sawyer (0.8.2)
+      addressable (>= 2.3.5)
+      faraday (> 0.8, < 2.0)
+    simpleidn (0.2.1)
+      unf (~> 0.1.4)
+    terminal-table (1.8.0)
+      unicode-display_width (~> 1.1, >= 1.1.1)
+    thread_safe (0.3.6)
+    typhoeus (1.4.0)
+      ethon (>= 0.9.0)
+    tzinfo (1.2.9)
+      thread_safe (~> 0.1)
+    unf (0.1.4)
+      unf_ext
+    unf_ext (0.0.7.7)
+    unicode-display_width (1.7.0)
+    zeitwerk (2.4.2)
+
+PLATFORMS
+  x86_64-linux
+  x86_64-linux-musl
+
+DEPENDENCIES
+  github-pages (~> 215)
+  minima (~> 2.5)
+  tzinfo (~> 1.2)
+  tzinfo-data
+  wdm (~> 0.1.1)
+
+BUNDLED WITH
+   2.2.21
diff --git a/docs/README.md b/docs/README.md
index 4fd13bdfc157efe8b3491695bb83972f96a82c5d..a1e43024a89c05a56aec2410b6c130dde0645ba0 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,6 +1,7 @@
 ---
 title: Theodolite
 nav_order: 1
+nav_exclude: true
 permalink: /
 ---
 
diff --git a/docs/_config.yml b/docs/_config.yml
index b0f0a13c22083b21a7c90ceaed44b846ffe55550..a4997a99b26fcdb24b08a892a64fefa14bf69081 100644
--- a/docs/_config.yml
+++ b/docs/_config.yml
@@ -1,6 +1,15 @@
 title: "Theodolite"
+description: >-
+  Theodolite is a framework for benchmarking the horizontal and vertical
+  scalability of stream processing engines.
+
 remote_theme: pmarsceill/just-the-docs
 #color_scheme: "dark"
 aux_links:
     "Theodolite on GitHub":
-      - "//github.com/cau-se/theodolite"
\ No newline at end of file
+      - "//github.com/cau-se/theodolite"
+
+exclude:
+  - Gemfile
+  - Gemfile.lock
+  - vendor
diff --git a/docs/benchmarks-and-executions.md b/docs/benchmarks-and-executions.md
new file mode 100644
index 0000000000000000000000000000000000000000..3e17e35307deea6b906d774933c6c5ffe8b6ee44
--- /dev/null
+++ b/docs/benchmarks-and-executions.md
@@ -0,0 +1,43 @@
+---
+title: Benchmarks and Executions
+has_children: false
+nav_order: 2
+---
+
+# Benchmarks and Executions
+
+In Theodolite, we distinguish between the static description of a scalability benchmark and its execution.
+
+## Benchmarks
+
+Benchmarks define what should be executed in scalability experiments. They
+consists of system under test (SUT) and an associated load generator, where
+both SUT and load generator are represented as sets of Kubernetes resources
+such Pods, Services, or ConfigMaps.
+Additionally, benchmarks define one or more load and resource types, scalability
+can be evaluated for.
+
+[TODO]: # (Link to metrics)
+
+Benchmarks are portable, that is they can be provided by standardization
+organizations, researchers, etc. and installed by other researchers,
+engineers, etc.
+They do not have a life-cycle. Instead, to run a benchmark, an execution of a
+benchmark is created and passed to Theodolite.
+
+## Execution
+
+An execution represents a one-time execution of a benchmark with a
+specific configuration. Hence, an execution refers to a benchmark and one of
+the load and resource types defined by that benchmark. Additionally, executions
+allow to alter the SUT or the load generator to evaluate regarding specific
+configurations.
+
+Executions also describe details regarding the scalability measurement method,
+such as for long experiment should be performed or how often they should be
+repeated.
+
+In contrast to benchmarks, execution have a life-cycle. They can be planned,
+executed, or aborted. Each execution of a benchmark is represented by an
+individual entity. This supports repeatability as executions can be archived
+and shared.
diff --git a/docs/creating-a-benchmark.md b/docs/creating-a-benchmark.md
new file mode 100644
index 0000000000000000000000000000000000000000..3d36e796ad52d064c11f9ead3627d7be80351188
--- /dev/null
+++ b/docs/creating-a-benchmark.md
@@ -0,0 +1,43 @@
+
+# Defining a Benchmark
+
+Please note that to simply run a benchmark, it is not required to define one. Theodolite comes with a set of benchmarks, which are ready to be executed. See the Benchmarks and Executions docs page to learn more about our distinction between benchmarks and executions.
+
+
+* Create a benchmark for operator mode
+* Create a benchmark for standalone mode
+* Deploy a benchmark
+
+## Creating a benchmark for operator mode
+
+### App and Workload Generator Resources
+
+### Load and Resource Types
+
+### Kafka Configuration
+
+
+### Make benchmark Kubernetes resources accessible
+
+* A benchmark is defined by a set of Kubernetes resources, which are automatically deployed and scaled by Theodolite.
+* To make these resources accessible by the Theodolite operator, we need to add them to a volume, already mounted by Theodolite. The easiest way to do this is by adding the resources to the configmap `xyz`, which is mounted by Theodilte with its default installation:
+* `sh`
+
+
+
+
+
+## Creating a benchmark for standalone mode
+
+Creating a benchmark in standalone mode is similar to operator mode. However,
+instead of defining a benchmark as `Benchmark` resource, it is defined as a
+benchmark YAML file. Such a file deviates in the following points from a
+`Benchmark` resource:
+
+* The fields `apiVersion`, `kind` and `metadata` should be removed.
+* The benchmark's name (`metadata.name` in `Benchmark` resources) must be defined by the top-level field `name`.
+* Everything that is defined in `spec` has to be moved to the top-level.
+
+**TODO: example**
+
+**TODO: Create a ConfigMap containing the benchmark YAML files as well as all Kubernetes resources for that benchmark + deploy**
\ No newline at end of file
diff --git a/docs/installation.md b/docs/installation.md
new file mode 100644
index 0000000000000000000000000000000000000000..e4381fbfb6646bc13021c78cdc13f8c8a6c28500
--- /dev/null
+++ b/docs/installation.md
@@ -0,0 +1,67 @@
+---
+title: Installation
+has_children: false
+nav_order: 3
+---
+
+# Installing Theodolite
+
+The easiest option to install Theodolite is using [Helm](https://helm.sh).
+To install Theodolite with all its dependencies run:
+
+```sh
+helm repo add theodolite https://cau-se.github.io/theodolite
+helm repo update
+helm install theodolite theodolite/theodolite
+```
+
+This installs Theodolite in operator mode. Operator mode is the easiest to be used, but requires some permissions in the installation. If those cannot be granted, Theodolite can also be installed for standalone mode. 
+
+
+## Installation Options
+
+As usual, the installation via Helm can be configured by passing a values YAML file:
+
+```
+helm install theodolite theodolite/theodolite --values <your-config.yaml>
+```
+
+For this purpose the [default values file]() can serve as a template for your custom configuration.
+
+### Operator mode
+
+The Theodolite operator allows to run and manage benchmarks through the Kubernetes API. It is installed by setting `operator.enabled` to `true`. In addition to Theodolite's dependencies, this will deploy all resources that are required for the operator as well as the CRDs, users will interact with.
+
+**TODO:** link
+
+### Standalone mode
+
+For running Theodolite in standalone mode, it is sufficient to disable the operator by setting `operator.enabled` to `false`. With this setting, only Theodolite's dependencies as well as resources to get the necessary permissions are installed.
+
+### Random Scheduler
+
+Installation of the random scheduler can be enabled and via `randomScheduler.enabled`. Please note that the random scheduler is neither required in operator mode nor in standalone mode. However, it has to be installed if benchmark executions should use random scheduling.
+
+**TODO:** link
+
+### Multiple installations in the same cluster
+
+Multiple Theodolite installations in the same namespace are currently not fully tested.
+In cases, where you need to install multiple Theodolite instances, it's best to use dedicated namespaces **and** different release names.
+
+*Note that for meaningful results, usually only one benchmark should be executed at a time.*
+
+## Installation Hints
+
+### Installation with a release name other than `theodolite`
+
+When using another release name than `theodolite`, make sure to adjust the Kafka Lag Exporter configuration of you `values.yaml` accordingly:
+
+```yaml
+kafka-lag-exporter:
+  clusters:
+  - name: "<your-release-name>-cp-kafka"
+    bootstrapBrokers: "<your-release-name>-cp-kafka:9092"
+```
+
+This seems unfortunately to be necessary as Helm does not let us inject values into dependency charts.
diff --git a/docs/release-process.md b/docs/release-process.md
index 981306b0762e43eacb29a434cc1e505593548fce..28456f44291a2938974e53a6be5254882215d237 100644
--- a/docs/release-process.md
+++ b/docs/release-process.md
@@ -1,7 +1,7 @@
 ---
 title: Release Process
 has_children: false
-nav_order: 2
+nav_order: 5
 ---
 
 # Release Process
@@ -35,7 +35,7 @@ again be merged into master.
 
 7. Tag this commit `v0.3.1` (can be done via GitLab). The corresponding Docker images will be uploaded.
 
-8. Create *releases* on GitLab and GitHub. Upload the generated Helm package to these releases.
+8. Create *releases* on GitLab and GitHub. Upload the generated Helm package to these releases via the UIs of GitLab and GitHub.
 
 9. Switch to the `master` branch.
 
diff --git a/docs/running-benchmarks.md b/docs/running-benchmarks.md
new file mode 100644
index 0000000000000000000000000000000000000000..3cb8e30aa916352d1dcfeb62701c5df660cb9026
--- /dev/null
+++ b/docs/running-benchmarks.md
@@ -0,0 +1,111 @@
+---
+title: Running Benchmarks
+has_children: false
+nav_order: 4
+---
+
+# Running Scalability Benchmarks
+
+There are two options to run scalability benchmarks with Theodolite:
+
+1. The [Theodolite Operator](#running-benchmarks-with-the-theodolite-operator) is a long-running service in your cluster, which accepts submitted benchmarks and executes them.
+2. In [standalone mode](#running-benchmarks-in-standalone-mode), Theodolite is started as a Kubernetes Job and only runs for the duration of one benchmark execution.
+
+While the operator is a bit more complex to install then the standalone mode,
+it makes it way easier to manage benchmarks and their executions. In
+particular, it allows to submit a set of experiments, which are then executed
+automatically one after another.
+**Therefore, running benchmarks with the operator is recommended.** 
+
+
+## Running Benchmarks with the Theodolite Operator
+
+The general process for running Theodolite benchmarks in operator mode is as follows:
+
+1. Create and deploy a new `Benchmark` resource or deploy one of the already existing ones.
+2. Define your benchmark execution as an `Execution` resource and deploy it.
+
+### 1. Creating a benchmark
+
+Benchmarks are defined as resources of our custom resource definition
+`Benchmark`. You can either create a new `Benchmark` for your custom benchmark
+or system under test or deploy one of the existing benchmarks, which can be
+found in [`theodolite-benchmarks/definitions`](theodolite-benchmarks/definitions). **TODO link**
+
+Suppose your `Benchmark` resource is stored in `example-benchmark.yaml`, you
+can deploy it by running:
+
+```sh
+kubectl apply -f example-benchmark.yaml
+```
+
+To see the list of all deployed benchmarks run:
+
+```sh
+kubectl get benchmarks
+```
+
+Additionally you need to make all your benchmark's Kubernetes resources available to the operator.
+
+**TODO benchmark resources**
+
+Once your benchmark is deployed, it is ready to be executed.
+
+### 2. Creating an execution
+
+To execute a benchmark, you need to describe this execution by creating an `Execution` resource.
+
+**TODO: details execution** 
+
+Suppose your `Execution` resource is stored in `example-execution.yaml`, you
+can deploy it by running:
+
+```sh
+kubectl apply -f example-execution.yaml
+```
+
+To see the list of all deployed benchmarks run:
+
+```sh
+kubectl get executions
+```
+
+The `STATUS` field will tell you whether a benchmark execution has been
+started, finished or failed due to some error. The `DURATION` field tells you
+for how long that execution is running (so far). Similar to a Kubernetes Job,
+an `Execution` is not automatically deleted once it is finished. This makes it
+easier to keep track of all the benchmark executions and to organize benchmark
+results.
+
+
+## Running Benchmarks in Standalone Mode
+
+The general process for running Theodolite benchmarks in standalone mode is as follows:
+
+1. Create a benchmark by writing a YAML file or select one of the already existing ones and create a ConfigMap from it.
+2. Define your benchmark execution as a YAML file and create a ConfigMap from it. We provide a template for this.
+3. Create a Theodolite Job from our template and mount your benchmark and benchmark execution with it.
+
+### 1. Creating a benchmark
+
+Creating a benchmark in standalone mode is similar to operator mode. However,
+instead of defining a benchmark as `Benchmark` resource, it is defined as a
+benchmark YAML file. Such a file deviates in the following points from a
+`Benchmark` resource:
+
+* The fields `apiVersion`, `kind` and `metadata` should be removed.
+* The benchmark's name (`metadata.name` in `Benchmark` resources) must be defined by the top-level field `name`.
+* Everything that is defined in `spec` has to be moved to the top-level.
+
+**TODO: example**
+
+**TODO: Create a ConfigMap containing the benchmark YAML files as well as all Kubernetes resources for that benchmark + deploy**
+
+### 2. Creating an execution
+
+**TODO: see above**
+
+
+### 3. Create a Theodolite Job
+
+**TODO example**
\ No newline at end of file
diff --git a/theodolite-quarkus/.dockerignore b/theodolite/.dockerignore
similarity index 100%
rename from theodolite-quarkus/.dockerignore
rename to theodolite/.dockerignore
diff --git a/theodolite-quarkus/.gitignore b/theodolite/.gitignore
similarity index 100%
rename from theodolite-quarkus/.gitignore
rename to theodolite/.gitignore
diff --git a/theodolite-quarkus/README.md b/theodolite/README.md
similarity index 90%
rename from theodolite-quarkus/README.md
rename to theodolite/README.md
index fc1d1bfe4a9c20a515cf6e69208657f74694d80e..26efe96b4756316971378be810f69f6138613958 100644
--- a/theodolite-quarkus/README.md
+++ b/theodolite/README.md
@@ -1,4 +1,4 @@
-# Theodolite-quarkus project
+# Theodolite project
 
 This project uses Quarkus, the Supersonic Subatomic Java Framework.
 
@@ -20,7 +20,7 @@ The application can be packaged using:
 ./gradlew build
 ```
 
-It produces the `theodolite-quarkus-1.0.0-SNAPSHOT-runner.jar` file in the `/build` directory. Be aware that it’s not
+It produces the `theodolite-1.0.0-SNAPSHOT-runner.jar` file in the `/build` directory. Be aware that it’s not
 an _über-jar_ as the dependencies are copied into the `build/lib` directory.
 
 If you want to build an _über-jar_, execute the following command:
@@ -29,7 +29,7 @@ If you want to build an _über-jar_, execute the following command:
 ./gradlew build -Dquarkus.package.type=uber-jar
 ```
 
-The application is now runnable using `java -jar build/theodolite-quarkus-1.0.0-SNAPSHOT-runner.jar`.
+The application is now runnable using `java -jar build/theodolite-1.0.0-SNAPSHOT-runner.jar`.
 
 ## Creating a native executable
 
@@ -46,7 +46,7 @@ Or, if you don't have GraalVM installed, you can run the native executable build
 ```
 
 You can then execute your native executable with:
-```./build/theodolite-quarkus-1.0.0-SNAPSHOT-runner```
+```./build/theodolite-1.0.0-SNAPSHOT-runner```
 
 If you want to learn more about building native executables, please consult https://quarkus.io/guides/gradle-tooling.
 
@@ -56,14 +56,14 @@ For the jvm version use:
 
 ```shell script
 ./gradlew build
-docker build -f src/main/docker/Dockerfile.jvm -t theodolite-quarkus-jvm .
+docker build -f src/main/docker/Dockerfile.jvm -t theodolite-jvm .
 ```
 
 For the native image version use:
 
 ```shell script
 ./gradlew build -Dquarkus.package.type=native
-docker build -f src/main/docker/Dockerfile.native -t theodolite-quarkus-native .
+docker build -f src/main/docker/Dockerfile.native -t theodolite-native .
 ```
 
 ## Execute docker images:
@@ -73,13 +73,13 @@ Remember to set the environment variables first.
 Jvm version:
 
 ```shell script
-docker run -i --rm theodolite-quarkus-jvm
+docker run -i --rm theodolite-jvm
 ```
 
 Native image version:
 
 ```shell script
-docker run -i --rm theodolite-quarkus-native
+docker run -i --rm theodolite-native
 ```
 
 ## Environment variables
diff --git a/theodolite-quarkus/build.gradle b/theodolite/build.gradle
similarity index 100%
rename from theodolite-quarkus/build.gradle
rename to theodolite/build.gradle
diff --git a/theodolite-quarkus/build_jvm.sh b/theodolite/build_jvm.sh
similarity index 52%
rename from theodolite-quarkus/build_jvm.sh
rename to theodolite/build_jvm.sh
index 95e2e44427a894a0513e6358b439d23e3eea834b..f4dd32fc5228576f09e95f0e8ac06fa08ea6acc7 100755
--- a/theodolite-quarkus/build_jvm.sh
+++ b/theodolite/build_jvm.sh
@@ -1,6 +1,6 @@
 
 ./gradlew build -x test
 
-docker build -f src/main/docker/Dockerfile.jvm -t quarkus/theodolite-quarkus-jvm .
+docker build -f src/main/docker/Dockerfile.jvm -t quarkus/theodolite-jvm .
 
-docker run -i --rm -p 8080:8080 quarkus/theodolite-quarkus-jvm
+docker run -i --rm -p 8080:8080 quarkus/theodolite-jvm
diff --git a/theodolite-quarkus/build_native.sh b/theodolite/build_native.sh
similarity index 61%
rename from theodolite-quarkus/build_native.sh
rename to theodolite/build_native.sh
index 1effa3268ce5b863a680c6f4bdc6b4b632b2d4c6..c2d7d81f35a24af951005bb30c52a8ab494ddb64 100755
--- a/theodolite-quarkus/build_native.sh
+++ b/theodolite/build_native.sh
@@ -1,6 +1,6 @@
 
 ./gradlew build -Dquarkus.package.type=native -x test
 
-docker build -f src/main/docker/Dockerfile.native -t quarkus/theodolite-quarkus .
+docker build -f src/main/docker/Dockerfile.native -t quarkus/theodolite .
 
-docker run -i --rm -p 8080:8080 quarkus/theodolite-quarkus
+docker run -i --rm -p 8080:8080 quarkus/theodolite
diff --git a/theodolite-quarkus/config/README.md b/theodolite/config/README.md
similarity index 100%
rename from theodolite-quarkus/config/README.md
rename to theodolite/config/README.md
diff --git a/theodolite-quarkus/config/aggregation-service.yaml b/theodolite/config/aggregation-service.yaml
similarity index 100%
rename from theodolite-quarkus/config/aggregation-service.yaml
rename to theodolite/config/aggregation-service.yaml
diff --git a/theodolite-quarkus/config/jmx-configmap.yaml b/theodolite/config/jmx-configmap.yaml
similarity index 100%
rename from theodolite-quarkus/config/jmx-configmap.yaml
rename to theodolite/config/jmx-configmap.yaml
diff --git a/theodolite-quarkus/config/service-monitor.yaml b/theodolite/config/service-monitor.yaml
similarity index 100%
rename from theodolite-quarkus/config/service-monitor.yaml
rename to theodolite/config/service-monitor.yaml
diff --git a/theodolite-quarkus/config/uc1-kstreams-deployment.yaml b/theodolite/config/uc1-kstreams-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/config/uc1-kstreams-deployment.yaml
rename to theodolite/config/uc1-kstreams-deployment.yaml
diff --git a/theodolite-quarkus/config/uc1-load-generator-deployment.yaml b/theodolite/config/uc1-load-generator-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/config/uc1-load-generator-deployment.yaml
rename to theodolite/config/uc1-load-generator-deployment.yaml
diff --git a/theodolite-quarkus/config/uc1-load-generator-service.yaml b/theodolite/config/uc1-load-generator-service.yaml
similarity index 100%
rename from theodolite-quarkus/config/uc1-load-generator-service.yaml
rename to theodolite/config/uc1-load-generator-service.yaml
diff --git a/theodolite-quarkus/config/uc1-service-monitor.yaml b/theodolite/config/uc1-service-monitor.yaml
similarity index 100%
rename from theodolite-quarkus/config/uc1-service-monitor.yaml
rename to theodolite/config/uc1-service-monitor.yaml
diff --git a/theodolite-quarkus/crd/crd-benchmark.yaml b/theodolite/crd/crd-benchmark.yaml
similarity index 100%
rename from theodolite-quarkus/crd/crd-benchmark.yaml
rename to theodolite/crd/crd-benchmark.yaml
diff --git a/theodolite-quarkus/crd/crd-execution.yaml b/theodolite/crd/crd-execution.yaml
similarity index 100%
rename from theodolite-quarkus/crd/crd-execution.yaml
rename to theodolite/crd/crd-execution.yaml
diff --git a/theodolite-quarkus/examples/operator/example-benchmark.yaml b/theodolite/examples/operator/example-benchmark.yaml
similarity index 100%
rename from theodolite-quarkus/examples/operator/example-benchmark.yaml
rename to theodolite/examples/operator/example-benchmark.yaml
diff --git a/theodolite-quarkus/examples/operator/example-execution.yaml b/theodolite/examples/operator/example-execution.yaml
similarity index 100%
rename from theodolite-quarkus/examples/operator/example-execution.yaml
rename to theodolite/examples/operator/example-execution.yaml
diff --git a/theodolite-quarkus/examples/standalone/example-benchmark.yaml b/theodolite/examples/standalone/example-benchmark.yaml
similarity index 100%
rename from theodolite-quarkus/examples/standalone/example-benchmark.yaml
rename to theodolite/examples/standalone/example-benchmark.yaml
diff --git a/theodolite-quarkus/examples/standalone/example-execution.yaml b/theodolite/examples/standalone/example-execution.yaml
similarity index 100%
rename from theodolite-quarkus/examples/standalone/example-execution.yaml
rename to theodolite/examples/standalone/example-execution.yaml
diff --git a/theodolite-quarkus/gradle.properties b/theodolite/gradle.properties
similarity index 100%
rename from theodolite-quarkus/gradle.properties
rename to theodolite/gradle.properties
diff --git a/theodolite-quarkus/gradle/wrapper/gradle-wrapper.jar b/theodolite/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from theodolite-quarkus/gradle/wrapper/gradle-wrapper.jar
rename to theodolite/gradle/wrapper/gradle-wrapper.jar
diff --git a/theodolite-quarkus/gradle/wrapper/gradle-wrapper.properties b/theodolite/gradle/wrapper/gradle-wrapper.properties
similarity index 100%
rename from theodolite-quarkus/gradle/wrapper/gradle-wrapper.properties
rename to theodolite/gradle/wrapper/gradle-wrapper.properties
diff --git a/theodolite-quarkus/gradlew b/theodolite/gradlew
similarity index 100%
rename from theodolite-quarkus/gradlew
rename to theodolite/gradlew
diff --git a/theodolite-quarkus/gradlew.bat b/theodolite/gradlew.bat
similarity index 100%
rename from theodolite-quarkus/gradlew.bat
rename to theodolite/gradlew.bat
diff --git a/theodolite-quarkus/settings.gradle b/theodolite/settings.gradle
similarity index 84%
rename from theodolite-quarkus/settings.gradle
rename to theodolite/settings.gradle
index 8a0af4a6504623f11c275c06e538537726935255..a726b4afa4cfdc7433dbd408808ab0fd6a766d6a 100644
--- a/theodolite-quarkus/settings.gradle
+++ b/theodolite/settings.gradle
@@ -8,4 +8,4 @@ pluginManagement {
         id "${quarkusPluginId}" version "${quarkusPluginVersion}"
     }
 }
-rootProject.name='theodolite-quarkus'
+rootProject.name='theodolite'
diff --git a/theodolite-quarkus/src/main/docker/Dockerfile.fast-jar b/theodolite/src/main/docker/Dockerfile.fast-jar
similarity index 93%
rename from theodolite-quarkus/src/main/docker/Dockerfile.fast-jar
rename to theodolite/src/main/docker/Dockerfile.fast-jar
index 32a4443a5d0291c8190acf8e59419d3d4825b2fd..16853dd8f064565ae017bee9dae3597b63085006 100644
--- a/theodolite-quarkus/src/main/docker/Dockerfile.fast-jar
+++ b/theodolite/src/main/docker/Dockerfile.fast-jar
@@ -7,18 +7,18 @@
 #
 # Then, build the image with:
 #
-# docker build -f src/main/docker/Dockerfile.fast-jar -t quarkus/theodolite-quarkus-fast-jar .
+# docker build -f src/main/docker/Dockerfile.fast-jar -t quarkus/theodolite-fast-jar .
 #
 # Then run the container using:
 #
-# docker run -i --rm -p 8080:8080 quarkus/theodolite-quarkus-fast-jar
+# docker run -i --rm -p 8080:8080 quarkus/theodolite-fast-jar
 #
 # If you want to include the debug port into your docker image
 # you will have to expose the debug port (default 5005) like this :  EXPOSE 8080 5050
 #
 # Then run the container using :
 #
-# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/theodolite-quarkus-fast-jar
+# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/theodolite-fast-jar
 #
 ###
 FROM registry.access.redhat.com/ubi8/ubi-minimal:8.3 
diff --git a/theodolite-quarkus/src/main/docker/Dockerfile.jvm b/theodolite/src/main/docker/Dockerfile.jvm
similarity index 93%
rename from theodolite-quarkus/src/main/docker/Dockerfile.jvm
rename to theodolite/src/main/docker/Dockerfile.jvm
index 6733d5d441e8292e02547cf59131c706575e9d86..4800a03181194772f854a85a9b0ba0eed17365ec 100644
--- a/theodolite-quarkus/src/main/docker/Dockerfile.jvm
+++ b/theodolite/src/main/docker/Dockerfile.jvm
@@ -7,18 +7,18 @@
 #
 # Then, build the image with:
 #
-# docker build -f src/main/docker/Dockerfile.jvm -t quarkus/theodolite-quarkus-jvm .
+# docker build -f src/main/docker/Dockerfile.jvm -t quarkus/theodolite-jvm .
 #
 # Then run the container using:
 #
-# docker run -i --rm -p 8080:8080 quarkus/theodolite-quarkus-jvm
+# docker run -i --rm -p 8080:8080 quarkus/theodolite-jvm
 #
 # If you want to include the debug port into your docker image
 # you will have to expose the debug port (default 5005) like this :  EXPOSE 8080 5050
 #
 # Then run the container using :
 #
-# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/theodolite-quarkus-jvm
+# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/theodolite-jvm
 #
 ###
 FROM registry.access.redhat.com/ubi8/ubi-minimal:8.3 
diff --git a/theodolite-quarkus/src/main/docker/Dockerfile.native b/theodolite/src/main/docker/Dockerfile.native
similarity index 89%
rename from theodolite-quarkus/src/main/docker/Dockerfile.native
rename to theodolite/src/main/docker/Dockerfile.native
index 29836a7148b573c3051c33341718b06008fa07e2..d03e77564f783b76d202986ebd7c1e336f013779 100644
--- a/theodolite-quarkus/src/main/docker/Dockerfile.native
+++ b/theodolite/src/main/docker/Dockerfile.native
@@ -7,11 +7,11 @@
 #
 # Then, build the image with:
 #
-# docker build -f src/main/docker/Dockerfile.native -t quarkus/theodolite-quarkus .
+# docker build -f src/main/docker/Dockerfile.native -t quarkus/theodolite .
 #
 # Then run the container using:
 #
-# docker run -i --rm -p 8080:8080 quarkus/theodolite-quarkus
+# docker run -i --rm -p 8080:8080 quarkus/theodolite
 #
 ###
 FROM registry.access.redhat.com/ubi8/ubi-minimal:8.3
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/Benchmark.kt b/theodolite/src/main/kotlin/theodolite/benchmark/Benchmark.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/Benchmark.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/Benchmark.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/BenchmarkDeployment.kt b/theodolite/src/main/kotlin/theodolite/benchmark/BenchmarkDeployment.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/BenchmarkDeployment.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/BenchmarkDeployment.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/BenchmarkExecution.kt b/theodolite/src/main/kotlin/theodolite/benchmark/BenchmarkExecution.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/BenchmarkExecution.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/BenchmarkExecution.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KafkaLagExporterRemover.kt b/theodolite/src/main/kotlin/theodolite/benchmark/KafkaLagExporterRemover.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KafkaLagExporterRemover.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/KafkaLagExporterRemover.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KubernetesBenchmark.kt b/theodolite/src/main/kotlin/theodolite/benchmark/KubernetesBenchmark.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KubernetesBenchmark.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/KubernetesBenchmark.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KubernetesBenchmarkDeployment.kt b/theodolite/src/main/kotlin/theodolite/benchmark/KubernetesBenchmarkDeployment.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/benchmark/KubernetesBenchmarkDeployment.kt
rename to theodolite/src/main/kotlin/theodolite/benchmark/KubernetesBenchmarkDeployment.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/evaluation/AnalysisExecutor.kt b/theodolite/src/main/kotlin/theodolite/evaluation/AnalysisExecutor.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/evaluation/AnalysisExecutor.kt
rename to theodolite/src/main/kotlin/theodolite/evaluation/AnalysisExecutor.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/evaluation/ExternalSloChecker.kt b/theodolite/src/main/kotlin/theodolite/evaluation/ExternalSloChecker.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/evaluation/ExternalSloChecker.kt
rename to theodolite/src/main/kotlin/theodolite/evaluation/ExternalSloChecker.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/evaluation/MetricFetcher.kt b/theodolite/src/main/kotlin/theodolite/evaluation/MetricFetcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/evaluation/MetricFetcher.kt
rename to theodolite/src/main/kotlin/theodolite/evaluation/MetricFetcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/evaluation/SloChecker.kt b/theodolite/src/main/kotlin/theodolite/evaluation/SloChecker.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/evaluation/SloChecker.kt
rename to theodolite/src/main/kotlin/theodolite/evaluation/SloChecker.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/evaluation/SloCheckerFactory.kt b/theodolite/src/main/kotlin/theodolite/evaluation/SloCheckerFactory.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/evaluation/SloCheckerFactory.kt
rename to theodolite/src/main/kotlin/theodolite/evaluation/SloCheckerFactory.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/BenchmarkExecutor.kt b/theodolite/src/main/kotlin/theodolite/execution/BenchmarkExecutor.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/BenchmarkExecutor.kt
rename to theodolite/src/main/kotlin/theodolite/execution/BenchmarkExecutor.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/BenchmarkExecutorImpl.kt b/theodolite/src/main/kotlin/theodolite/execution/BenchmarkExecutorImpl.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/BenchmarkExecutorImpl.kt
rename to theodolite/src/main/kotlin/theodolite/execution/BenchmarkExecutorImpl.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/Main.kt b/theodolite/src/main/kotlin/theodolite/execution/Main.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/Main.kt
rename to theodolite/src/main/kotlin/theodolite/execution/Main.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/Shutdown.kt b/theodolite/src/main/kotlin/theodolite/execution/Shutdown.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/Shutdown.kt
rename to theodolite/src/main/kotlin/theodolite/execution/Shutdown.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/TheodoliteExecutor.kt b/theodolite/src/main/kotlin/theodolite/execution/TheodoliteExecutor.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/TheodoliteExecutor.kt
rename to theodolite/src/main/kotlin/theodolite/execution/TheodoliteExecutor.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/TheodoliteYamlExecutor.kt b/theodolite/src/main/kotlin/theodolite/execution/TheodoliteYamlExecutor.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/TheodoliteYamlExecutor.kt
rename to theodolite/src/main/kotlin/theodolite/execution/TheodoliteYamlExecutor.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/AbstractStateHandler.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/AbstractStateHandler.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/AbstractStateHandler.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/AbstractStateHandler.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ClusterSetup.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/ClusterSetup.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ClusterSetup.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/ClusterSetup.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt
similarity index 97%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt
index 4168bd19b57216722ca5301d42ce5e0df3f6c192..653366010725a8db816c92aece7bb572b659426b 100644
--- a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt
+++ b/theodolite/src/main/kotlin/theodolite/execution/operator/ExecutionEventHandler.kt
@@ -53,10 +53,10 @@ class ExecutionHandler(
      */
     @Synchronized
     override fun onUpdate(oldExecution: ExecutionCRD, newExecution: ExecutionCRD) {
-        logger.info { "Receive update event for execution ${oldExecution.metadata.name}" }
         newExecution.spec.name = newExecution.metadata.name
         oldExecution.spec.name = oldExecution.metadata.name
         if(gson.toJson(oldExecution.spec) != gson.toJson(newExecution.spec)) {
+            logger.info { "Receive update event for execution ${oldExecution.metadata.name}" }
             when(this.stateHandler.getExecutionState(newExecution.metadata.name)) {
                 States.RUNNING -> {
                         this.stateHandler.setExecutionState(newExecution.spec.name, States.RESTART)
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ExecutionStateHandler.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/ExecutionStateHandler.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/ExecutionStateHandler.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/ExecutionStateHandler.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/LeaderElector.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/LeaderElector.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/LeaderElector.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/LeaderElector.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/StateHandler.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/StateHandler.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/StateHandler.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/StateHandler.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/TheodoliteController.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/TheodoliteController.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/TheodoliteController.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/TheodoliteController.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt b/theodolite/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt
similarity index 93%
rename from theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt
rename to theodolite/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt
index 0415680f5947b3a7d759ad0dbf67cd27c2c58d24..5318abc174d9204c19466729698a63f2ad29a54c 100644
--- a/theodolite-quarkus/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt
+++ b/theodolite/src/main/kotlin/theodolite/execution/operator/TheodoliteOperator.kt
@@ -67,15 +67,16 @@ class TheodoliteOperator {
                 client = client
             ).clearClusterState()
 
-            getController(
+            controller = getController(
                 client = client,
                 executionStateHandler = getExecutionStateHandler(client = client)
-            ).run()
-            getExecutionEventHandler(client).startAllRegisteredInformers()
+            )
+            getExecutionEventHandler(controller, client).startAllRegisteredInformers()
+            controller.run()
         }
     }
 
-    fun getExecutionEventHandler(client: NamespacedKubernetesClient): SharedInformerFactory {
+    fun getExecutionEventHandler(controller: TheodoliteController, client: NamespacedKubernetesClient): SharedInformerFactory {
         val factory = client.informers()
             .inNamespace(client.namespace)
 
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/k8s/CustomResourceWrapper.kt b/theodolite/src/main/kotlin/theodolite/k8s/CustomResourceWrapper.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/k8s/CustomResourceWrapper.kt
rename to theodolite/src/main/kotlin/theodolite/k8s/CustomResourceWrapper.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sContextFactory.kt b/theodolite/src/main/kotlin/theodolite/k8s/K8sContextFactory.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sContextFactory.kt
rename to theodolite/src/main/kotlin/theodolite/k8s/K8sContextFactory.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sManager.kt b/theodolite/src/main/kotlin/theodolite/k8s/K8sManager.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sManager.kt
rename to theodolite/src/main/kotlin/theodolite/k8s/K8sManager.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sResourceLoader.kt b/theodolite/src/main/kotlin/theodolite/k8s/K8sResourceLoader.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/k8s/K8sResourceLoader.kt
rename to theodolite/src/main/kotlin/theodolite/k8s/K8sResourceLoader.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/k8s/TopicManager.kt b/theodolite/src/main/kotlin/theodolite/k8s/TopicManager.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/k8s/TopicManager.kt
rename to theodolite/src/main/kotlin/theodolite/k8s/TopicManager.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/BenchmarkCRD.kt b/theodolite/src/main/kotlin/theodolite/model/crd/BenchmarkCRD.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/BenchmarkCRD.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/BenchmarkCRD.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/BenchmarkExecutionList.kt b/theodolite/src/main/kotlin/theodolite/model/crd/BenchmarkExecutionList.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/BenchmarkExecutionList.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/BenchmarkExecutionList.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/ExecutionCRD.kt b/theodolite/src/main/kotlin/theodolite/model/crd/ExecutionCRD.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/ExecutionCRD.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/ExecutionCRD.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/ExecutionStatus.kt b/theodolite/src/main/kotlin/theodolite/model/crd/ExecutionStatus.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/ExecutionStatus.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/ExecutionStatus.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/KubernetesBenchmarkList.kt b/theodolite/src/main/kotlin/theodolite/model/crd/KubernetesBenchmarkList.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/KubernetesBenchmarkList.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/KubernetesBenchmarkList.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/model/crd/States.kt b/theodolite/src/main/kotlin/theodolite/model/crd/States.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/model/crd/States.kt
rename to theodolite/src/main/kotlin/theodolite/model/crd/States.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/AbstractPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/AbstractPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/AbstractPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/AbstractPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/EnvVarPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/EnvVarPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/EnvVarPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/EnvVarPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/ImagePatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/ImagePatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/ImagePatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/ImagePatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/LabelPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/LabelPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/LabelPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/LabelPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/NodeSelectorPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/NodeSelectorPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/NodeSelectorPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/NodeSelectorPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/NumNestedGroupsLoadGeneratorReplicaPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/NumNestedGroupsLoadGeneratorReplicaPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/NumNestedGroupsLoadGeneratorReplicaPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/NumNestedGroupsLoadGeneratorReplicaPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/NumSensorsLoadGeneratorReplicaPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/NumSensorsLoadGeneratorReplicaPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/NumSensorsLoadGeneratorReplicaPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/NumSensorsLoadGeneratorReplicaPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/Patcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/Patcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/Patcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/Patcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/PatcherDefinitionFactory.kt b/theodolite/src/main/kotlin/theodolite/patcher/PatcherDefinitionFactory.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/PatcherDefinitionFactory.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/PatcherDefinitionFactory.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/PatcherFactory.kt b/theodolite/src/main/kotlin/theodolite/patcher/PatcherFactory.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/PatcherFactory.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/PatcherFactory.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/ReplicaPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/ReplicaPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/ReplicaPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/ReplicaPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/ResourceLimitPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/ResourceLimitPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/ResourceLimitPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/ResourceLimitPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/ResourceRequestPatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/ResourceRequestPatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/ResourceRequestPatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/ResourceRequestPatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/patcher/SchedulerNamePatcher.kt b/theodolite/src/main/kotlin/theodolite/patcher/SchedulerNamePatcher.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/patcher/SchedulerNamePatcher.kt
rename to theodolite/src/main/kotlin/theodolite/patcher/SchedulerNamePatcher.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/StrategyFactory.kt b/theodolite/src/main/kotlin/theodolite/strategies/StrategyFactory.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/StrategyFactory.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/StrategyFactory.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/restriction/LowerBoundRestriction.kt b/theodolite/src/main/kotlin/theodolite/strategies/restriction/LowerBoundRestriction.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/restriction/LowerBoundRestriction.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/restriction/LowerBoundRestriction.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/restriction/RestrictionStrategy.kt b/theodolite/src/main/kotlin/theodolite/strategies/restriction/RestrictionStrategy.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/restriction/RestrictionStrategy.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/restriction/RestrictionStrategy.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/BinarySearch.kt b/theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/BinarySearch.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/BinarySearch.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/BinarySearch.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/CompositeStrategy.kt b/theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/CompositeStrategy.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/CompositeStrategy.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/CompositeStrategy.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/FullSearch.kt b/theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/FullSearch.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/FullSearch.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/FullSearch.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/LinearSearch.kt b/theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/LinearSearch.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/LinearSearch.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/LinearSearch.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/SearchStrategy.kt b/theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/SearchStrategy.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/strategies/searchstrategy/SearchStrategy.kt
rename to theodolite/src/main/kotlin/theodolite/strategies/searchstrategy/SearchStrategy.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/Config.kt b/theodolite/src/main/kotlin/theodolite/util/Config.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/Config.kt
rename to theodolite/src/main/kotlin/theodolite/util/Config.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/ConfigurationOverride.kt b/theodolite/src/main/kotlin/theodolite/util/ConfigurationOverride.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/ConfigurationOverride.kt
rename to theodolite/src/main/kotlin/theodolite/util/ConfigurationOverride.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/DeploymentFailedException.kt b/theodolite/src/main/kotlin/theodolite/util/DeploymentFailedException.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/DeploymentFailedException.kt
rename to theodolite/src/main/kotlin/theodolite/util/DeploymentFailedException.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/IOHandler.kt b/theodolite/src/main/kotlin/theodolite/util/IOHandler.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/IOHandler.kt
rename to theodolite/src/main/kotlin/theodolite/util/IOHandler.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/InvalidPatcherConfigurationException.kt b/theodolite/src/main/kotlin/theodolite/util/InvalidPatcherConfigurationException.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/InvalidPatcherConfigurationException.kt
rename to theodolite/src/main/kotlin/theodolite/util/InvalidPatcherConfigurationException.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/KafkaConfig.kt b/theodolite/src/main/kotlin/theodolite/util/KafkaConfig.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/KafkaConfig.kt
rename to theodolite/src/main/kotlin/theodolite/util/KafkaConfig.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/LoadDimension.kt b/theodolite/src/main/kotlin/theodolite/util/LoadDimension.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/LoadDimension.kt
rename to theodolite/src/main/kotlin/theodolite/util/LoadDimension.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/Parser.kt b/theodolite/src/main/kotlin/theodolite/util/Parser.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/Parser.kt
rename to theodolite/src/main/kotlin/theodolite/util/Parser.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/PatcherDefinition.kt b/theodolite/src/main/kotlin/theodolite/util/PatcherDefinition.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/PatcherDefinition.kt
rename to theodolite/src/main/kotlin/theodolite/util/PatcherDefinition.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/PrometheusResponse.kt b/theodolite/src/main/kotlin/theodolite/util/PrometheusResponse.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/PrometheusResponse.kt
rename to theodolite/src/main/kotlin/theodolite/util/PrometheusResponse.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/Resource.kt b/theodolite/src/main/kotlin/theodolite/util/Resource.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/Resource.kt
rename to theodolite/src/main/kotlin/theodolite/util/Resource.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/Results.kt b/theodolite/src/main/kotlin/theodolite/util/Results.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/Results.kt
rename to theodolite/src/main/kotlin/theodolite/util/Results.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/TypeName.kt b/theodolite/src/main/kotlin/theodolite/util/TypeName.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/TypeName.kt
rename to theodolite/src/main/kotlin/theodolite/util/TypeName.kt
diff --git a/theodolite-quarkus/src/main/kotlin/theodolite/util/YamlParser.kt b/theodolite/src/main/kotlin/theodolite/util/YamlParser.kt
similarity index 100%
rename from theodolite-quarkus/src/main/kotlin/theodolite/util/YamlParser.kt
rename to theodolite/src/main/kotlin/theodolite/util/YamlParser.kt
diff --git a/theodolite-quarkus/src/main/resources/application.properties b/theodolite/src/main/resources/application.properties
similarity index 100%
rename from theodolite-quarkus/src/main/resources/application.properties
rename to theodolite/src/main/resources/application.properties
diff --git a/theodolite-quarkus/src/main/resources/operator/example-execution-k8s-resource.yaml b/theodolite/src/main/resources/operator/example-execution-k8s-resource.yaml
similarity index 100%
rename from theodolite-quarkus/src/main/resources/operator/example-execution-k8s-resource.yaml
rename to theodolite/src/main/resources/operator/example-execution-k8s-resource.yaml
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/CompositeStrategyTest.kt b/theodolite/src/test/kotlin/theodolite/CompositeStrategyTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/CompositeStrategyTest.kt
rename to theodolite/src/test/kotlin/theodolite/CompositeStrategyTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/ResourceLimitPatcherTest.kt b/theodolite/src/test/kotlin/theodolite/ResourceLimitPatcherTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/ResourceLimitPatcherTest.kt
rename to theodolite/src/test/kotlin/theodolite/ResourceLimitPatcherTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/ResourceRequestPatcherTest.kt b/theodolite/src/test/kotlin/theodolite/ResourceRequestPatcherTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/ResourceRequestPatcherTest.kt
rename to theodolite/src/test/kotlin/theodolite/ResourceRequestPatcherTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmark.kt b/theodolite/src/test/kotlin/theodolite/TestBenchmark.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmark.kt
rename to theodolite/src/test/kotlin/theodolite/TestBenchmark.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmarkDeployment.kt b/theodolite/src/test/kotlin/theodolite/TestBenchmarkDeployment.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmarkDeployment.kt
rename to theodolite/src/test/kotlin/theodolite/TestBenchmarkDeployment.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmarkExecutorImpl.kt b/theodolite/src/test/kotlin/theodolite/TestBenchmarkExecutorImpl.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/TestBenchmarkExecutorImpl.kt
rename to theodolite/src/test/kotlin/theodolite/TestBenchmarkExecutorImpl.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/BenchmarkCRDummy.kt b/theodolite/src/test/kotlin/theodolite/execution/operator/BenchmarkCRDummy.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/BenchmarkCRDummy.kt
rename to theodolite/src/test/kotlin/theodolite/execution/operator/BenchmarkCRDummy.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ControllerTest.kt b/theodolite/src/test/kotlin/theodolite/execution/operator/ControllerTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ControllerTest.kt
rename to theodolite/src/test/kotlin/theodolite/execution/operator/ControllerTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ExecutionCRDummy.kt b/theodolite/src/test/kotlin/theodolite/execution/operator/ExecutionCRDummy.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ExecutionCRDummy.kt
rename to theodolite/src/test/kotlin/theodolite/execution/operator/ExecutionCRDummy.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt b/theodolite/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt
similarity index 98%
rename from theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt
rename to theodolite/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt
index d72dd1cd3e70d94dbd49efb866b8ae6334ab0a4c..bbbb3092cd54a8f3313bb923be3682be50801f39 100644
--- a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt
+++ b/theodolite/src/test/kotlin/theodolite/execution/operator/ExecutionEventHandlerTest.kt
@@ -39,7 +39,7 @@ class ExecutionEventHandlerTest {
             executionStateHandler = ExecutionStateHandler(client = server.client)
         )
 
-        this.factory = operator.getExecutionEventHandler(server.client)
+        this.factory = operator.getExecutionEventHandler(this.controller,server.client)
         this.stateHandler = TheodoliteOperator().getExecutionStateHandler(client = server.client)
 
         this.executionVersion1 = K8sResourceLoader(server.client)
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/StateHandlerTest.kt b/theodolite/src/test/kotlin/theodolite/execution/operator/StateHandlerTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/execution/operator/StateHandlerTest.kt
rename to theodolite/src/test/kotlin/theodolite/execution/operator/StateHandlerTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/k8s/K8sManagerTest.kt b/theodolite/src/test/kotlin/theodolite/k8s/K8sManagerTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/k8s/K8sManagerTest.kt
rename to theodolite/src/test/kotlin/theodolite/k8s/K8sManagerTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/k8s/K8sResourceLoaderTest.kt b/theodolite/src/test/kotlin/theodolite/k8s/K8sResourceLoaderTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/k8s/K8sResourceLoaderTest.kt
rename to theodolite/src/test/kotlin/theodolite/k8s/K8sResourceLoaderTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/strategies/restriction/LowerBoundRestrictionTest.kt b/theodolite/src/test/kotlin/theodolite/strategies/restriction/LowerBoundRestrictionTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/strategies/restriction/LowerBoundRestrictionTest.kt
rename to theodolite/src/test/kotlin/theodolite/strategies/restriction/LowerBoundRestrictionTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/util/IOHandlerTest.kt b/theodolite/src/test/kotlin/theodolite/util/IOHandlerTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/util/IOHandlerTest.kt
rename to theodolite/src/test/kotlin/theodolite/util/IOHandlerTest.kt
diff --git a/theodolite-quarkus/src/test/kotlin/theodolite/util/ResultsTest.kt b/theodolite/src/test/kotlin/theodolite/util/ResultsTest.kt
similarity index 100%
rename from theodolite-quarkus/src/test/kotlin/theodolite/util/ResultsTest.kt
rename to theodolite/src/test/kotlin/theodolite/util/ResultsTest.kt
diff --git a/theodolite-quarkus/src/test/resources/cpu-deployment.yaml b/theodolite/src/test/resources/cpu-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/cpu-deployment.yaml
rename to theodolite/src/test/resources/cpu-deployment.yaml
diff --git a/theodolite-quarkus/src/test/resources/cpu-memory-deployment.yaml b/theodolite/src/test/resources/cpu-memory-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/cpu-memory-deployment.yaml
rename to theodolite/src/test/resources/cpu-memory-deployment.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-benchmark.yaml b/theodolite/src/test/resources/k8s-resource-files/test-benchmark.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-benchmark.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-benchmark.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-configmap.yaml b/theodolite/src/test/resources/k8s-resource-files/test-configmap.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-configmap.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-configmap.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-deployment.yaml b/theodolite/src/test/resources/k8s-resource-files/test-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-deployment.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-deployment.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-execution-update.yaml b/theodolite/src/test/resources/k8s-resource-files/test-execution-update.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-execution-update.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-execution-update.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-execution.yaml b/theodolite/src/test/resources/k8s-resource-files/test-execution.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-execution.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-execution.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-service-monitor.yaml b/theodolite/src/test/resources/k8s-resource-files/test-service-monitor.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-service-monitor.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-service-monitor.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-service.yaml b/theodolite/src/test/resources/k8s-resource-files/test-service.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-service.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-service.yaml
diff --git a/theodolite-quarkus/src/test/resources/k8s-resource-files/test-statefulset.yaml b/theodolite/src/test/resources/k8s-resource-files/test-statefulset.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/k8s-resource-files/test-statefulset.yaml
rename to theodolite/src/test/resources/k8s-resource-files/test-statefulset.yaml
diff --git a/theodolite-quarkus/src/test/resources/memory-deployment.yaml b/theodolite/src/test/resources/memory-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/memory-deployment.yaml
rename to theodolite/src/test/resources/memory-deployment.yaml
diff --git a/theodolite-quarkus/src/test/resources/no-resources-deployment.yaml b/theodolite/src/test/resources/no-resources-deployment.yaml
similarity index 100%
rename from theodolite-quarkus/src/test/resources/no-resources-deployment.yaml
rename to theodolite/src/test/resources/no-resources-deployment.yaml