diff --git a/.gitignore b/.gitignore
index 917737fe4c9794242262abb12038ee4c480b1375..9ad1779db82734378aaf9270e2e23cda951dd0dd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,7 +16,7 @@ target/
 ### IntelliJ IDEA ###
 .idea
 *.iws
-#*.iml
+*.iml
 *.ipr
 
 ### NetBeans ###
diff --git a/out/production/entwurfsmuster/aliens_3rdparty.jar b/out/production/entwurfsmuster/aliens_3rdparty.jar
new file mode 100644
index 0000000000000000000000000000000000000000..6952e0b840cab170face2cb2e218047c4fa676f0
Binary files /dev/null and b/out/production/entwurfsmuster/aliens_3rdparty.jar differ
diff --git a/out/production/entwurfsmuster/aliensimulator/AlienSimulator.class b/out/production/entwurfsmuster/aliensimulator/AlienSimulator.class
new file mode 100644
index 0000000000000000000000000000000000000000..bd01a0f3216bb9224d0b403750b9365cb149f79c
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/AlienSimulator.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/Alien.class b/out/production/entwurfsmuster/aliensimulator/aliens/Alien.class
new file mode 100644
index 0000000000000000000000000000000000000000..3c32f9ab89126f11600dec206431ab49dbba967b
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/Alien.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/AlienAdapter.class b/out/production/entwurfsmuster/aliensimulator/aliens/AlienAdapter.class
new file mode 100644
index 0000000000000000000000000000000000000000..9f0de54ffd89de5363307ffa6954d6a9946195b5
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/AlienAdapter.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/AlienFactory.class b/out/production/entwurfsmuster/aliensimulator/aliens/AlienFactory.class
new file mode 100644
index 0000000000000000000000000000000000000000..2c68fa123e1cc5b6763c7d6de30e0fe733916c3f
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/AlienFactory.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/AlienMars.class b/out/production/entwurfsmuster/aliensimulator/aliens/AlienMars.class
new file mode 100644
index 0000000000000000000000000000000000000000..ac188bd44019ecadc1e0d6e70bfdd77270e2e44f
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/AlienMars.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/AlienMond.class b/out/production/entwurfsmuster/aliensimulator/aliens/AlienMond.class
new file mode 100644
index 0000000000000000000000000000000000000000..2dfd0bb957835ea2171ec2e407fc8221d7787d72
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/AlienMond.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/aliens/AlienVenus.class b/out/production/entwurfsmuster/aliensimulator/aliens/AlienVenus.class
new file mode 100644
index 0000000000000000000000000000000000000000..592b922c928893bde043f816c194ddab2e69afd2
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/aliens/AlienVenus.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/predators/HishQuTen.class b/out/production/entwurfsmuster/aliensimulator/predators/HishQuTen.class
new file mode 100644
index 0000000000000000000000000000000000000000..27abd32b4966de6d2040f94b70c0ef2071d891fd
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/predators/HishQuTen.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/predators/Predator.class b/out/production/entwurfsmuster/aliensimulator/predators/Predator.class
new file mode 100644
index 0000000000000000000000000000000000000000..32c63d6b8de44812df11fe1fbbd196e233b29cc4
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/predators/Predator.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/predators/PredatorFactory.class b/out/production/entwurfsmuster/aliensimulator/predators/PredatorFactory.class
new file mode 100644
index 0000000000000000000000000000000000000000..305822b297546bb00b1310b654cdf984191e5180
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/predators/PredatorFactory.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/predators/PredatorRegistry.class b/out/production/entwurfsmuster/aliensimulator/predators/PredatorRegistry.class
new file mode 100644
index 0000000000000000000000000000000000000000..2c576551c95a4e5efc4925127cce52d69b7d75ab
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/predators/PredatorRegistry.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/predators/Yautja.class b/out/production/entwurfsmuster/aliensimulator/predators/Yautja.class
new file mode 100644
index 0000000000000000000000000000000000000000..74e8a21a7c6425d3abd54b3fcd13ca13d68df576
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/predators/Yautja.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/AlienUfoFactory.class b/out/production/entwurfsmuster/aliensimulator/ufos/AlienUfoFactory.class
new file mode 100644
index 0000000000000000000000000000000000000000..c6c0c9eab81180aa5a4c357bc2ebd894a422e2c5
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/AlienUfoFactory.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/KomponentenModul.class b/out/production/entwurfsmuster/aliensimulator/ufos/KomponentenModul.class
new file mode 100644
index 0000000000000000000000000000000000000000..ed14eb5a4026dcb0793155c9e56507bf290e33e5
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/KomponentenModul.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/PredatorUfoFactory.class b/out/production/entwurfsmuster/aliensimulator/ufos/PredatorUfoFactory.class
new file mode 100644
index 0000000000000000000000000000000000000000..e1f5cf6045708fc2d23003fa2c0b17a25c36c4ad
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/PredatorUfoFactory.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/Sternenkreuzer.class b/out/production/entwurfsmuster/aliensimulator/ufos/Sternenkreuzer.class
new file mode 100644
index 0000000000000000000000000000000000000000..6a32c1fed3080b21c1187189aa2554429dd30c07
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/Sternenkreuzer.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/Transportschiff.class b/out/production/entwurfsmuster/aliensimulator/ufos/Transportschiff.class
new file mode 100644
index 0000000000000000000000000000000000000000..24cde87e22d2665e292963521dacff78409bc72d
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/Transportschiff.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/Ufo.class b/out/production/entwurfsmuster/aliensimulator/ufos/Ufo.class
new file mode 100644
index 0000000000000000000000000000000000000000..b383ba5abbd47a48be2e33594aa659d041fb9bd4
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/Ufo.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/UfoFactory.class b/out/production/entwurfsmuster/aliensimulator/ufos/UfoFactory.class
new file mode 100644
index 0000000000000000000000000000000000000000..1355aa775dba5730390b9672dbe769b5ad3c32af
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/UfoFactory.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponenten.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponenten.class
new file mode 100644
index 0000000000000000000000000000000000000000..bb02d859d47000122c958ce8733c239a7d83ec51
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponenten.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponentenFabrik.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponentenFabrik.class
new file mode 100644
index 0000000000000000000000000000000000000000..d4c03e27a5abc0b3e50aa6e2f4d77f0610dac15f
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/AlienKomponentenFabrik.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Antrieb.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Antrieb.class
new file mode 100644
index 0000000000000000000000000000000000000000..8729afb072894bd92a69bf4694a971873b0753b0
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Antrieb.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Hyperantrieb.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Hyperantrieb.class
new file mode 100644
index 0000000000000000000000000000000000000000..82ae965cdbf52ecb41817ed3a0c9e15659083502
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Hyperantrieb.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/KomponentenFabrik.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/KomponentenFabrik.class
new file mode 100644
index 0000000000000000000000000000000000000000..d3fdc44404531e3c6e6f8f91204b159fb4cde88a
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/KomponentenFabrik.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Laserkanone.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Laserkanone.class
new file mode 100644
index 0000000000000000000000000000000000000000..998251a7609ad2c9446773bd82ac623697d68611
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Laserkanone.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Metaphasenschild.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Metaphasenschild.class
new file mode 100644
index 0000000000000000000000000000000000000000..5c6cf3c26ff466b24ebcf43d34460f7345d1e419
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Metaphasenschild.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Phaserkanone.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Phaserkanone.class
new file mode 100644
index 0000000000000000000000000000000000000000..1ef980691e177702e4ab59df221ead662fd38d1f
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Phaserkanone.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponenten.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponenten.class
new file mode 100644
index 0000000000000000000000000000000000000000..3c04f69774741a356f53afb522753dd86f937cd2
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponenten.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponentenFabrik.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponentenFabrik.class
new file mode 100644
index 0000000000000000000000000000000000000000..5916895c0a06145ae7c8d31ffa53b6f78c714a0e
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/PredatorKomponentenFabrik.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Schild.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Schild.class
new file mode 100644
index 0000000000000000000000000000000000000000..705088e581da58c9070ac69b989daccd9115f26b
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Schild.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Verteidigungsschild.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Verteidigungsschild.class
new file mode 100644
index 0000000000000000000000000000000000000000..1945a032f97e7c09f1b00ea995e7d65b9fe82ab6
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Verteidigungsschild.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Waffe.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Waffe.class
new file mode 100644
index 0000000000000000000000000000000000000000..e6535ee16696c3e0ae7b5b233c5bc3a704ad8027
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Waffe.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Warpantrieb.class b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Warpantrieb.class
new file mode 100644
index 0000000000000000000000000000000000000000..2b4214c17ce1d9afc7bf5ef587b6676c89bb4df2
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/ufos/komponenten/Warpantrieb.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeBesuchverhalten.class b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeBesuchverhalten.class
new file mode 100644
index 0000000000000000000000000000000000000000..4e7caca1c64c37a6c7113b584031a28fe32392e4
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeBesuchverhalten.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFeindlichBesuchen.class b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFeindlichBesuchen.class
new file mode 100644
index 0000000000000000000000000000000000000000..6f7ff5d7bc6c6a2f2386df5229360b7b45dce619
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFeindlichBesuchen.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFreundlichBesuchen.class b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFreundlichBesuchen.class
new file mode 100644
index 0000000000000000000000000000000000000000..5a16f1dbce06d8fa0edc05aa84e7761e12acaf15
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeFreundlichBesuchen.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeNeutralAdapter.class b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeNeutralAdapter.class
new file mode 100644
index 0000000000000000000000000000000000000000..bf61995d1b4dba734f8fac8064c6aac063647491
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeNeutralAdapter.class differ
diff --git a/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeZerstoererischAdapter.class b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeZerstoererischAdapter.class
new file mode 100644
index 0000000000000000000000000000000000000000..f53589e29282e18468d3c6be66b750e920d5ae89
Binary files /dev/null and b/out/production/entwurfsmuster/aliensimulator/verhalten/ErdeZerstoererischAdapter.class differ
diff --git a/out/production/entwurfsmuster/guava-21.0.jar b/out/production/entwurfsmuster/guava-21.0.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0618195945f19848b80cbdcc56d7f05d913c6f64
Binary files /dev/null and b/out/production/entwurfsmuster/guava-21.0.jar differ
diff --git a/out/production/entwurfsmuster/guice-4.1.0-no_aop.jar b/out/production/entwurfsmuster/guice-4.1.0-no_aop.jar
new file mode 100644
index 0000000000000000000000000000000000000000..5d19a30dd234b53193d68bf7b69862919c5024ff
Binary files /dev/null and b/out/production/entwurfsmuster/guice-4.1.0-no_aop.jar differ
diff --git a/out/production/entwurfsmuster/javax.inject-1.jar b/out/production/entwurfsmuster/javax.inject-1.jar
new file mode 100644
index 0000000000000000000000000000000000000000..b2a9d0bf7bd463a6361898b36f010edd05c0cf6e
Binary files /dev/null and b/out/production/entwurfsmuster/javax.inject-1.jar differ