diff --git a/PlayWall/src/de/tobias/playpad/RegistryCollectionImpl.java b/PlayWall/src/de/tobias/playpad/RegistryCollectionImpl.java
index 75079636aef275754b1dc19a766ac71169e4e034..8c4179a04d058dfd014566e5c20c6c86206f554b 100644
--- a/PlayWall/src/de/tobias/playpad/RegistryCollectionImpl.java
+++ b/PlayWall/src/de/tobias/playpad/RegistryCollectionImpl.java
@@ -4,7 +4,7 @@ import de.tobias.playpad.action.ActionFactory;
 import de.tobias.playpad.action.mapper.MapperFactory;
 import de.tobias.playpad.audio.AudioRegistry;
 import de.tobias.playpad.design.DesignFactory;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
+import de.tobias.playpad.pad.content.PadContentRegistry;
 import de.tobias.playpad.pad.drag.PadDragMode;
 import de.tobias.playpad.registry.ComponentRegistry;
 import de.tobias.playpad.registry.DefaultComponentRegistry;
diff --git a/PlayWall/src/de/tobias/playpad/action/cartaction/CartAction.java b/PlayWall/src/de/tobias/playpad/action/cartaction/CartAction.java
index ad5af8a922484e84f6197480d59b436a64cae217..e6d780acadfb7e7b2df14d56b39b7520dd3db633 100644
--- a/PlayWall/src/de/tobias/playpad/action/cartaction/CartAction.java
+++ b/PlayWall/src/de/tobias/playpad/action/cartaction/CartAction.java
@@ -9,7 +9,7 @@ import de.tobias.playpad.action.feedback.ColorAdjustable;
 import de.tobias.playpad.action.feedback.FeedbackType;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.project.Project;
 import de.tobias.playpad.viewcontroller.actions.CartActionViewController;
 import de.tobias.playpad.viewcontroller.main.IMainViewController;
diff --git a/PlayWall/src/de/tobias/playpad/action/cartaction/PadContentFeedbackListener.java b/PlayWall/src/de/tobias/playpad/action/cartaction/PadContentFeedbackListener.java
index d093406173742b4c4afc2775955debdd58f25716..837c8300dec34976822d40a642e0c289e86fbfbe 100644
--- a/PlayWall/src/de/tobias/playpad/action/cartaction/PadContentFeedbackListener.java
+++ b/PlayWall/src/de/tobias/playpad/action/cartaction/PadContentFeedbackListener.java
@@ -1,7 +1,7 @@
 package de.tobias.playpad.action.cartaction;
 
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 
diff --git a/PlayWall/src/de/tobias/playpad/action/cartaction/PadPositionWarningListener.java b/PlayWall/src/de/tobias/playpad/action/cartaction/PadPositionWarningListener.java
index c9e3afdfee365576aebdcf81a0da981f39701484..5b31234a4f213a20e258d9fbc8b5039de3212203 100644
--- a/PlayWall/src/de/tobias/playpad/action/cartaction/PadPositionWarningListener.java
+++ b/PlayWall/src/de/tobias/playpad/action/cartaction/PadPositionWarningListener.java
@@ -3,7 +3,7 @@ package de.tobias.playpad.action.cartaction;
 import de.tobias.playpad.action.feedback.FeedbackMessage;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.util.Duration;
diff --git a/PlayWall/src/de/tobias/playpad/action/cartaction/PadStatusFeedbackListener.java b/PlayWall/src/de/tobias/playpad/action/cartaction/PadStatusFeedbackListener.java
index 992dec67bc5dd786c9b14e0cfafc0625159832ea..98a555a2f126bb310a7b0672bc4d36a140fdfa18 100644
--- a/PlayWall/src/de/tobias/playpad/action/cartaction/PadStatusFeedbackListener.java
+++ b/PlayWall/src/de/tobias/playpad/action/cartaction/PadStatusFeedbackListener.java
@@ -4,7 +4,7 @@ import de.tobias.playpad.action.feedback.FeedbackMessage;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 import javafx.util.Duration;
diff --git a/PlayWall/src/de/tobias/playpad/action/mapper/MidiMapperFactory.java b/PlayWall/src/de/tobias/playpad/action/mapper/MidiMapperFactory.java
index 3d6166845bc94ae06abdea212c583b80cb550343..073ba0e21431b5e18751bd622e0c1c48f4c31aae 100644
--- a/PlayWall/src/de/tobias/playpad/action/mapper/MidiMapperFactory.java
+++ b/PlayWall/src/de/tobias/playpad/action/mapper/MidiMapperFactory.java
@@ -24,13 +24,17 @@ public class MidiMapperFactory extends MapperFactory implements MapperConnectFee
 	@Override
 	public void initFeedbackType() {
 		MidiDeviceImpl midiDeviceImpl = Midi.getInstance().getMidiDevice();
-		midiDeviceImpl.initDevice();
+		if (midiDeviceImpl != null) {
+			midiDeviceImpl.initDevice();
+		}
 	}
 
 	@Override
 	public void clearFeedbackType() {
 		MidiDeviceImpl midiDeviceImpl = Midi.getInstance().getMidiDevice();
-		midiDeviceImpl.clearFeedback();
+		if (midiDeviceImpl != null) {
+			midiDeviceImpl.clearFeedback();
+		}
 	}
 
 	// TODO Remove
diff --git a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java
index b108a75b4a8c7e4628f5b53a4389730071b56b87..77281ced3d3eaeb48c6d44f08bcab60be6015a74 100644
--- a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java
+++ b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandler.java
@@ -21,7 +21,7 @@ import javax.sound.sampled.Mixer;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.pad.content.AudioContent;
 import de.tobias.playpad.settings.GlobalSettings;
 import de.tobias.utils.util.FileUtils;
@@ -33,6 +33,7 @@ import javafx.util.Duration;
 import javazoom.jl.converter.Converter;
 import javazoom.jl.decoder.JavaLayerException;
 
+@Deprecated
 public class ClipAudioHandler extends AudioHandler {
 
 	private static final String MP3 = "mp3";
diff --git a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandlerFactory.java b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandlerFactory.java
index dbe49172360ed8bbdf468bee8626ea4da89c1377..5f4ecab38eddc65d3ba726e7226a759aca33780f 100644
--- a/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandlerFactory.java
+++ b/PlayWall/src/de/tobias/playpad/audio/ClipAudioHandlerFactory.java
@@ -1,10 +1,10 @@
 package de.tobias.playpad.audio;
 
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
 import de.tobias.playpad.viewcontroller.audio.ClipSettingsViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 
+@Deprecated
 public class ClipAudioHandlerFactory extends AudioHandlerFactory implements AutoCloseable {
 
 	public ClipAudioHandlerFactory(String type) {
@@ -16,18 +16,13 @@ public class ClipAudioHandlerFactory extends AudioHandlerFactory implements Auto
 		return new ClipAudioHandler(content);
 	}
 
-	@Override
-	public AudioHandlerViewController getAudioHandlerSettingsViewController() {
-		return new ClipSettingsViewController();
-	}
-
 	@Override
 	public void close() throws Exception {
 		ClipAudioHandler.shutdown();
 	}
 
 	@Override
-	public boolean isFeatureAvaiable(AudioCapability audioCapability) {
+	public boolean isFeatureAvailable(AudioCapability audioCapability) {
 		for (Class<?> clazz : ClipAudioHandler.class.getInterfaces()) {
 			if (clazz.equals(audioCapability.getAudioFeature()))
 				return true;
diff --git a/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java
index d363e7e52f470c96db11501207be287cc83ecbd8..ffed8e9f18f6812da1bb04a1e6ed35cdd4ccefe6 100644
--- a/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java
+++ b/PlayWall/src/de/tobias/playpad/audio/JavaFXAudioHandler.java
@@ -1,7 +1,7 @@
 package de.tobias.playpad.audio;
 
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.pad.content.AudioContent;
 import javafx.application.Platform;
 import javafx.beans.property.*;
diff --git a/PlayWall/src/de/tobias/playpad/audio/JavaFXHandlerFactory.java b/PlayWall/src/de/tobias/playpad/audio/JavaFXHandlerFactory.java
index e7801045525443f01ce78886bcbd33a9078f8e8d..306a43733c8adfad24432305af94d085e345f7a1 100644
--- a/PlayWall/src/de/tobias/playpad/audio/JavaFXHandlerFactory.java
+++ b/PlayWall/src/de/tobias/playpad/audio/JavaFXHandlerFactory.java
@@ -1,8 +1,7 @@
 package de.tobias.playpad.audio;
 
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 
 public class JavaFXHandlerFactory extends AudioHandlerFactory {
 
@@ -14,14 +13,9 @@ public class JavaFXHandlerFactory extends AudioHandlerFactory {
 	public AudioHandler createAudioHandler(PadContent content) {
 		return new JavaFXAudioHandler(content);
 	}
-
-	@Override
-	public AudioHandlerViewController getAudioHandlerSettingsViewController() {
-		return null;
-	}
 	
 	@Override
-	public boolean isFeatureAvaiable(AudioCapability audioCapability) {
+	public boolean isFeatureAvailable(AudioCapability audioCapability) {
 		for (Class<?> clazz : JavaFXAudioHandler.class.getInterfaces()) {
 			if (clazz.equals(audioCapability.getAudioFeature()))
 				return true;
diff --git a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java
index 8e8e8d163388f59d0c83e044316b52fddb7eb3d6..ebb84595e891c79bcbecfa787278b6890de6e301 100644
--- a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java
+++ b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandler.java
@@ -21,7 +21,7 @@ import javax.sound.sampled.UnsupportedAudioFileException;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.pad.content.AudioContent;
 import de.tobias.playpad.settings.GlobalSettings;
 import de.tobias.playpad.settings.Profile;
diff --git a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandlerFactory.java b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandlerFactory.java
index 789a6774146b1ffca780459f170f95eba1f24fbe..85237820a52cffddbdcffd7e75f05241fa207715 100644
--- a/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandlerFactory.java
+++ b/PlayWall/src/de/tobias/playpad/audio/TinyAudioHandlerFactory.java
@@ -1,9 +1,8 @@
 package de.tobias.playpad.audio;
 
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
 import de.tobias.playpad.viewcontroller.audio.TinySoundSettingsViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 
 public class TinyAudioHandlerFactory extends AudioHandlerFactory implements AutoCloseable {
 
@@ -16,11 +15,6 @@ public class TinyAudioHandlerFactory extends AudioHandlerFactory implements Auto
 		return new TinyAudioHandler(content);
 	}
 
-	@Override
-	public AudioHandlerViewController getAudioHandlerSettingsViewController() {
-		return new TinySoundSettingsViewController();
-	}
-
 	@Override
 	public String getType() {
 		return TinyAudioHandler.TYPE;
@@ -32,7 +26,7 @@ public class TinyAudioHandlerFactory extends AudioHandlerFactory implements Auto
 	}
 
 	@Override
-	public boolean isFeatureAvaiable(AudioCapability audioCapability) {
+	public boolean isFeatureAvailable(AudioCapability audioCapability) {
 		for (Class<?> clazz : TinyAudioHandler.class.getInterfaces()) {
 			if (clazz.equals(audioCapability.getAudioFeature()))
 				return true;
diff --git a/PlayWall/src/de/tobias/playpad/design/modern/ModernCartDesign.java b/PlayWall/src/de/tobias/playpad/design/modern/ModernCartDesign.java
index baa4871b6acf78ca50710ae721270965b8c5f5f5..af034ba9e51912022c2c5ca5e01bf76a38e5df73 100644
--- a/PlayWall/src/de/tobias/playpad/design/modern/ModernCartDesign.java
+++ b/PlayWall/src/de/tobias/playpad/design/modern/ModernCartDesign.java
@@ -9,7 +9,7 @@ import de.tobias.playpad.design.DesignColorAssociator;
 import de.tobias.playpad.design.FadeableColor;
 import de.tobias.playpad.design.GlobalDesign;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
 import javafx.scene.paint.Color;
 import javafx.util.Duration;
diff --git a/PlayWall/src/de/tobias/playpad/design/modern/ModernGlobalDesign.java b/PlayWall/src/de/tobias/playpad/design/modern/ModernGlobalDesign.java
index 2de8bf6c30afb35e81c51ebaa1dcfa2f7c50d4fc..212b9ce7c4cff0348622b69616d40c1d3b7067d9 100644
--- a/PlayWall/src/de/tobias/playpad/design/modern/ModernGlobalDesign.java
+++ b/PlayWall/src/de/tobias/playpad/design/modern/ModernGlobalDesign.java
@@ -17,7 +17,7 @@ import de.tobias.playpad.design.FadeableColor;
 import de.tobias.playpad.design.GlobalDesign;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
 import de.tobias.playpad.project.Project;
 import de.tobias.playpad.settings.Profile;
diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadDragListener.java b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadDragListener.java
index 8a24f60c47731c81b8d35baeffce6b13ce857659..4d366155e1475e3cb5fa627265726edd18dcd244 100644
--- a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadDragListener.java
+++ b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadDragListener.java
@@ -9,9 +9,9 @@ import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.layout.desktop.DesktopEditMode;
 import de.tobias.playpad.layout.desktop.DesktopMainLayoutFactory;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.PadContentRegistry;
 import de.tobias.playpad.pad.drag.PadDragMode;
 import de.tobias.playpad.pad.view.IPadView;
 import de.tobias.playpad.project.Project;
diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
index f1d064a4bbeca9cea44c23e59d64c29c683d8e6b..b8cb2eb016c169db68a0d94544d2a786edf08483 100644
--- a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
+++ b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
@@ -4,10 +4,10 @@ import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.PseudoClasses;
 import de.tobias.playpad.layout.desktop.DesktopMainLayoutFactory;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
-import de.tobias.playpad.pad.conntent.play.Pauseable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContentRegistry;
+import de.tobias.playpad.pad.content.play.Pauseable;
 import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.pad.view.IPadView;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
diff --git a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
index 30da0dea16d78577d36bc4f6415000051c7d58fd..cfbd6be38ded9979c0c433a44496d0f80cd065b8 100644
--- a/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
+++ b/PlayWall/src/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
@@ -12,10 +12,10 @@ import de.tobias.playpad.layout.desktop.DesktopMainLayoutFactory;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
 import de.tobias.playpad.pad.TimeMode;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContentRegistry;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.pad.listener.IPadPositionListener;
 import de.tobias.playpad.pad.listener.PadContentListener;
 import de.tobias.playpad.pad.listener.PadDurationListener;
diff --git a/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadView.java b/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadView.java
index 6868fa950409370116d1ebc327799afb087226dd..172d7ce43e1acc7256bcd614751709138967c4e5 100644
--- a/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadView.java
+++ b/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadView.java
@@ -3,8 +3,8 @@ package de.tobias.playpad.layout.touch;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.PseudoClasses;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
 import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.pad.view.IPadView;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
diff --git a/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadViewController.java b/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadViewController.java
index eb3df64993ddcc97eb98238f148c6be79e08283e..eda57b4680e27556d9cfdcb7a13e2549fe135fc2 100644
--- a/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadViewController.java
+++ b/PlayWall/src/de/tobias/playpad/layout/touch/TouchPadViewController.java
@@ -3,7 +3,7 @@ package de.tobias.playpad.layout.touch;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
 import de.tobias.playpad.pad.TimeMode;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.pad.listener.IPadPositionListener;
 import de.tobias.playpad.pad.listener.PadContentListener;
 import de.tobias.playpad.pad.listener.PadDurationListener;
diff --git a/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java b/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java
index ad1b9fd095c5c692cb63445710dd3c6be994e9d2..da672b214f0672fe402588161f0235fefdc6b631 100644
--- a/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java
+++ b/PlayWall/src/de/tobias/playpad/pad/content/AudioContent.java
@@ -11,16 +11,15 @@ import org.dom4j.Element;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.audio.AudioHandler;
 import de.tobias.playpad.audio.AudioRegistry;
-import de.tobias.playpad.pad.conntent.play.Equalizeable;
-import de.tobias.playpad.audio.Fade;
+import de.tobias.playpad.pad.content.play.Equalizeable;
+import de.tobias.playpad.pad.fade.Fade;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.path.SinglePathContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
-import de.tobias.playpad.pad.conntent.play.Fadeable;
-import de.tobias.playpad.pad.conntent.play.FadeHandler;
-import de.tobias.playpad.pad.conntent.play.Pauseable;
+import de.tobias.playpad.pad.content.path.SinglePathContent;
+import de.tobias.playpad.pad.content.play.Durationable;
+import de.tobias.playpad.pad.fade.Fadeable;
+import de.tobias.playpad.pad.fade.FadeDelegate;
+import de.tobias.playpad.pad.content.play.Pauseable;
 import de.tobias.playpad.project.ProjectExporter;
 import de.tobias.playpad.registry.NoSuchComponentException;
 import de.tobias.playpad.volume.VolumeManager;
@@ -33,7 +32,7 @@ import javafx.beans.value.ChangeListener;
 import javafx.scene.media.AudioEqualizer;
 import javafx.util.Duration;
 
-public class AudioContent extends PadContent implements Pauseable, Durationable, Fadeable, Equalizeable, SinglePathContent, FadeHandler {
+public class AudioContent extends PadContent implements Pauseable, Durationable, Fadeable, Equalizeable, SinglePathContent, FadeDelegate {
 
 	private final String type;
 
@@ -128,7 +127,7 @@ public class AudioContent extends PadContent implements Pauseable, Durationable,
 	}
 
 	@Override
-	public void setFadeLevel(double level) {
+	public void onFadeLevelChange(double level) {
 		Pad pad = getPad();
 		VolumeManager manager = Pad.getVolumeManager();
 
@@ -175,7 +174,7 @@ public class AudioContent extends PadContent implements Pauseable, Durationable,
 		audioHandler = audioRegistry.getCurrentAudioHandler().createAudioHandler(this);
 
 		if (Files.exists(path)) {
-			audioHandler.loadMedia(new Path[]{path});
+			audioHandler.loadMedia(path);
 
 			durationProperty.bind(audioHandler.durationProperty());
 			positionProperty.bind(audioHandler.positionProperty());
diff --git a/PlayWall/src/de/tobias/playpad/pad/content/AudioContentFactory.java b/PlayWall/src/de/tobias/playpad/pad/content/AudioContentFactory.java
index bbc9d48c269777bce7a3aa56d6e5010478afc941..340c9ff61263c47e1d03b07b7a5bc6322e5b991b 100644
--- a/PlayWall/src/de/tobias/playpad/pad/content/AudioContentFactory.java
+++ b/PlayWall/src/de/tobias/playpad/pad/content/AudioContentFactory.java
@@ -1,13 +1,9 @@
 package de.tobias.playpad.pad.content;
 
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
 import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.viewcontroller.option.ProfileSettingsTabViewController;
 import de.tobias.playpad.viewcontroller.option.profile.AudioTabViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 import javafx.geometry.Pos;
 import javafx.scene.Node;
 import javafx.scene.control.Label;
diff --git a/PlayWall/src/de/tobias/playpad/pad/listener/PadContentListener.java b/PlayWall/src/de/tobias/playpad/pad/listener/PadContentListener.java
index d974f109d6562289133c8a195079f7e378318d24..0b88a71ca642f337b7c892cf68bc04d3a2efc9ab 100644
--- a/PlayWall/src/de/tobias/playpad/pad/listener/PadContentListener.java
+++ b/PlayWall/src/de/tobias/playpad/pad/listener/PadContentListener.java
@@ -1,8 +1,8 @@
 package de.tobias.playpad.pad.listener;
 
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
diff --git a/PlayWall/src/de/tobias/playpad/pad/listener/PadPositionListener.java b/PlayWall/src/de/tobias/playpad/pad/listener/PadPositionListener.java
index 02e0d0525f5567264b6060bd0fa096cd96c18d22..03cd71431b920e4d75f63b964301f82a40ea1cad 100644
--- a/PlayWall/src/de/tobias/playpad/pad/listener/PadPositionListener.java
+++ b/PlayWall/src/de/tobias/playpad/pad/listener/PadPositionListener.java
@@ -3,9 +3,9 @@ package de.tobias.playpad.pad.listener;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
-import de.tobias.playpad.pad.conntent.play.Fadeable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
+import de.tobias.playpad.pad.fade.Fadeable;
 import de.tobias.playpad.pad.viewcontroller.IPadViewController;
 import de.tobias.playpad.settings.Profile;
 import javafx.beans.value.ObservableValue;
diff --git a/PlayWall/src/de/tobias/playpad/view/FileDragOptionView.java b/PlayWall/src/de/tobias/playpad/view/FileDragOptionView.java
index ccb9f47e4c5413ee4daf192b3b40138a786cc854..709aa37121211b85bf2330767b6fcae57feecdc0 100644
--- a/PlayWall/src/de/tobias/playpad/view/FileDragOptionView.java
+++ b/PlayWall/src/de/tobias/playpad/view/FileDragOptionView.java
@@ -4,7 +4,7 @@ import java.util.Set;
 import java.util.function.Consumer;
 
 import de.tobias.playpad.PseudoClasses;
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.ContentFactory;
 import javafx.animation.FadeTransition;
 import javafx.animation.ParallelTransition;
 import javafx.animation.ScaleTransition;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/audio/ClipSettingsViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/audio/ClipSettingsViewController.java
index 1cf62dd4e5bc531cced38b433420086db33ab173..06715aad3319dd3cf92e8bc9bdda3b3b24efc995 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/audio/ClipSettingsViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/audio/ClipSettingsViewController.java
@@ -27,6 +27,7 @@ import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
 import javafx.util.Callback;
 
+@Deprecated
 public class ClipSettingsViewController extends AudioHandlerViewController implements Callback<ListView<Info>, ListCell<Info>> {
 
 	@FXML private ComboBox<Info> soundCardComboBox;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/audio/TinySoundSettingsViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/audio/TinySoundSettingsViewController.java
index 799ed153cf5d716f4bb78e1ebd71903b2a759e40..ff96b80ea2731674e78c36d9421614930bb61fc2 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/audio/TinySoundSettingsViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/audio/TinySoundSettingsViewController.java
@@ -27,6 +27,7 @@ import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
 import javafx.util.Callback;
 
+@Deprecated
 public class TinySoundSettingsViewController extends AudioHandlerViewController implements Callback<ListView<Info>, ListCell<Info>> {
 
 	@FXML private ComboBox<Info> soundCardComboBox;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/cell/errordialog/IOExceptionButtonListener.java b/PlayWall/src/de/tobias/playpad/viewcontroller/cell/errordialog/IOExceptionButtonListener.java
index a6af41df0bd7d91275a8c05ffab050a31c39c407..33cb9929e7afed6312296d6463395822887201cb 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/cell/errordialog/IOExceptionButtonListener.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/cell/errordialog/IOExceptionButtonListener.java
@@ -7,9 +7,9 @@ import java.nio.file.Path;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadException;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContentRegistry;
 import de.tobias.playpad.registry.NoSuchComponentException;
 import de.tobias.playpad.view.ExceptionButton;
 import de.tobias.utils.util.FileUtils;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
index 82234cd261e611b985199ebc2a4e2bd7db7f1421..3c8167f124023223f7d215b4cea2120b88425557 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/option/pad/PadSettingsViewController.java
@@ -9,11 +9,11 @@ import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.Strings;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
-import de.tobias.playpad.pad.conntent.path.MultiPathContent;
-import de.tobias.playpad.pad.conntent.path.SinglePathContent;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.PadContentRegistry;
+import de.tobias.playpad.pad.content.path.MultiPathContent;
+import de.tobias.playpad.pad.content.path.SinglePathContent;
 import de.tobias.playpad.registry.NoSuchComponentException;
 import de.tobias.playpad.settings.Profile;
 import de.tobias.playpad.viewcontroller.IPadSettingsViewController;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/AudioTabViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/AudioTabViewController.java
index c64ee3f3363faecbba31bee0fc76e08356ee0747..3a4c57e5373badf1af08aca530b8125f3913e487 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/AudioTabViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/AudioTabViewController.java
@@ -99,7 +99,7 @@ public class AudioTabViewController extends ProfileSettingsTabViewController imp
 		AudioHandlerViewController settingsViewController = null;
 
 		Label availableLabel;
-		if (audio.isFeatureAvaiable(audioCapability)) {
+		if (audio.isFeatureAvailable(audioCapability)) {
 			availableLabel = new FontIcon(FontAwesomeType.CHECK);
 
 			settingsViewController = audio.getAudioFeatureSettings(audioCapability);
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/ProfileSettingsViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/ProfileSettingsViewController.java
index a9a099fac48df4c8d456f0c474f03d9610869b0f..235ea3d4367880bad4a3e97d5f644549d55eb14b 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/ProfileSettingsViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/option/profile/ProfileSettingsViewController.java
@@ -3,7 +3,7 @@ package de.tobias.playpad.viewcontroller.option.profile;
 import java.util.ArrayList;
 import java.util.List;
 
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.ContentFactory;
 import org.controlsfx.control.TaskProgressView;
 
 import de.tobias.playpad.PlayPadMain;
diff --git a/PlayWall/src/de/tobias/playpad/viewcontroller/option/project/PathsTabViewController.java b/PlayWall/src/de/tobias/playpad/viewcontroller/option/project/PathsTabViewController.java
index c5cc0bc29096bc194d8a97511f091eff7274a7b3..2e1171a050b227bdd09754d75743dd4d72a90dec 100644
--- a/PlayWall/src/de/tobias/playpad/viewcontroller/option/project/PathsTabViewController.java
+++ b/PlayWall/src/de/tobias/playpad/viewcontroller/option/project/PathsTabViewController.java
@@ -13,9 +13,9 @@ import de.tobias.playpad.PlayPadMain;
 import de.tobias.playpad.Strings;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.path.MultiPathContent;
-import de.tobias.playpad.pad.conntent.path.SinglePathContent;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.path.MultiPathContent;
+import de.tobias.playpad.pad.content.path.SinglePathContent;
 import de.tobias.playpad.project.Project;
 import de.tobias.playpad.project.ProjectSettings;
 import de.tobias.playpad.registry.NoSuchComponentException;
diff --git a/PlayWallCore/src/de/tobias/playpad/RegistryCollection.java b/PlayWallCore/src/de/tobias/playpad/RegistryCollection.java
index eab6ee01a1ca11c838960bc7320cab49beb19d26..0ae37a93d067daef006a90142286d371cfc28307 100644
--- a/PlayWallCore/src/de/tobias/playpad/RegistryCollection.java
+++ b/PlayWallCore/src/de/tobias/playpad/RegistryCollection.java
@@ -4,7 +4,7 @@ import de.tobias.playpad.action.ActionFactory;
 import de.tobias.playpad.action.mapper.MapperFactory;
 import de.tobias.playpad.audio.AudioRegistry;
 import de.tobias.playpad.design.DesignFactory;
-import de.tobias.playpad.pad.conntent.PadContentRegistry;
+import de.tobias.playpad.pad.content.PadContentRegistry;
 import de.tobias.playpad.pad.drag.PadDragMode;
 import de.tobias.playpad.registry.DefaultRegistry;
 import de.tobias.playpad.registry.Registry;
diff --git a/PlayWallCore/src/de/tobias/playpad/audio/AudioCapability.java b/PlayWallCore/src/de/tobias/playpad/audio/AudioCapability.java
index abb3d675c2bfb00e7fe6da7c1300dbae69070477..5e6e1523b5d7a426147f6b005b8a7f4011ba1f19 100644
--- a/PlayWallCore/src/de/tobias/playpad/audio/AudioCapability.java
+++ b/PlayWallCore/src/de/tobias/playpad/audio/AudioCapability.java
@@ -1,6 +1,9 @@
 package de.tobias.playpad.audio;
 
-import de.tobias.playpad.pad.conntent.play.Equalizeable;
+import de.tobias.playpad.pad.content.play.Equalizeable;
+
+import java.util.ArrayList;
+import java.util.List;
 
 public class AudioCapability {
 
@@ -10,6 +13,14 @@ public class AudioCapability {
 	private String name;
 	private Class<? extends AudioFeature> clazz;
 
+	private static List<AudioCapability> audioCapabilityList;
+
+	static {
+		audioCapabilityList = new ArrayList<>();
+		audioCapabilityList.add(EQUALIZER);
+		audioCapabilityList.add(SOUNDCARD);
+	}
+
 	private AudioCapability(String name, Class<? extends AudioFeature> clazz) {
 		this.name = name;
 		this.clazz = clazz;
@@ -23,7 +34,8 @@ public class AudioCapability {
 		return clazz;
 	}
 
-	public static AudioCapability[] getFeatures() {
-		return new AudioCapability[] { EQUALIZER, SOUNDCARD };
+	public static List<AudioCapability> getFeatures() {
+		return audioCapabilityList;
 	}
+
 }
diff --git a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java
index 842572a4b4713dd59e7b8d08a72218363ef7628e..47f724560f965bab4217795e8af6b084cab00b01 100644
--- a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java
+++ b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandler.java
@@ -2,12 +2,15 @@ package de.tobias.playpad.audio;
 
 import java.nio.file.Path;
 
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import javafx.beans.property.ReadOnlyObjectProperty;
 import javafx.util.Duration;
 
 // Mögliche Interfaces: Equalizeable
 
+/**
+ * Describes an audio handler implantation.
+ */
 public abstract class AudioHandler {
 
 	private PadContent content;
@@ -20,27 +23,71 @@ public abstract class AudioHandler {
 		return content;
 	}
 
+	/**
+	 * Start the audio stream
+	 */
 	public abstract void play();
 
+	/**
+	 * Pause the audio stream.
+	 */
 	public abstract void pause();
 
+	/**
+	 * Stop the audio stream.
+	 */
 	public abstract void stop();
 
+	/**
+	 *	Get the current play position of the current player.
+	 * @return current position
+	 */
 	public abstract Duration getPosition();
 
+	/**
+	 * Get the current play position of the current player.
+ 	 * @return current position property
+	 */
 	public abstract ReadOnlyObjectProperty<Duration> positionProperty();
 
+	/**
+	 * Get the duration of the current player.
+	 *
+	 * @return duration
+	 */
 	public abstract Duration getDuration();
 
+	/**
+	 * Get the duration of the current player.
+	 *
+	 * @return duration property
+	 */
 	public abstract ReadOnlyObjectProperty<Duration> durationProperty();
 
+	/**
+	 * Set the current volume between 0 and 1.
+	 *
+	 * @param volume new volume
+	 */
 	public abstract void setVolume(double volume);
 
+	/**
+	 * Check if media is loaded.
+	 *
+	 * @return <code>true</code> Loaded
+	 */
 	public abstract boolean isMediaLoaded();
 
-	// TODO Auch einzelne Dateien laden
-	public abstract void loadMedia(Path[] paths);
+	/**
+	 * prepare a set of media to be played.
+	 *
+	 * @param paths path to the audio files
+	 */
+	public abstract void loadMedia(Path... paths);
 
+	/**
+	 * Unload Media to cleanup resources.
+	 */
 	public abstract void unloadMedia();
 
 }
diff --git a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandlerFactory.java b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandlerFactory.java
index 9d013094da03329f69e7027f3951da2d55578916..b1e4e8a0ccb32c737ee7756d8622800e93762abf 100644
--- a/PlayWallCore/src/de/tobias/playpad/audio/AudioHandlerFactory.java
+++ b/PlayWallCore/src/de/tobias/playpad/audio/AudioHandlerFactory.java
@@ -1,15 +1,14 @@
 package de.tobias.playpad.audio;
 
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.RegistryCollection;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.registry.Component;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 
 /**
- * Audio Handler Interface zur Verwaltung einer AudioHandler Implementierung.
- * Für Aktionen beim schließen des Programmes, muss der AudioHandler
- * AutoClosable implementieren.
- * 
+ * Factory to create an instance of an audio handler implementation. The factories are collected in {@link RegistryCollection#getAudioHandlers()}
+ * If an AudioHandler have some cleanups on shutdown to do, it must implement {@link AutoCloseable}
+ *
  * @author tobias
  *
  * @since 5.0.0
@@ -30,20 +29,13 @@ public abstract class AudioHandlerFactory extends Component {
 	public abstract AudioHandler createAudioHandler(PadContent content);
 
 	/**
-	 * Gibt den Settings View Controller für die Audio Schnittstelle zurück.s
-	 * 
-	 * @return neuer ViewContoller
-	 */
-	public abstract AudioHandlerViewController getAudioHandlerSettingsViewController();
-
-	/**
-	 * Prüft ob ein Feature verfügbar ist.
+	 * Check if an audio feature is available in the implementation
 	 * 
 	 * @param audioCapability
 	 *            Feature
-	 * @return <code>true</code> Verfügbar
+	 * @return <code>true</code> available
 	 */
-	public abstract boolean isFeatureAvaiable(AudioCapability audioCapability);
+	public abstract boolean isFeatureAvailable(AudioCapability audioCapability);
 
 	/**
 	 * Gibt wenn vorhanden einen ViewController für die entsprechenden
diff --git a/PlayWallCore/src/de/tobias/playpad/audio/AudioRegistry.java b/PlayWallCore/src/de/tobias/playpad/audio/AudioRegistry.java
index 6416be398cd54aabcf306d90a87479db96f2bbdf..7078749ace1ca933a51847d29f75726a189e741a 100644
--- a/PlayWallCore/src/de/tobias/playpad/audio/AudioRegistry.java
+++ b/PlayWallCore/src/de/tobias/playpad/audio/AudioRegistry.java
@@ -4,6 +4,7 @@ import de.tobias.playpad.registry.DefaultComponentRegistry;
 import de.tobias.playpad.registry.NoSuchComponentException;
 import de.tobias.playpad.settings.Profile;
 
+@Deprecated
 public class AudioRegistry extends DefaultComponentRegistry<AudioHandlerFactory> {
 
 	public AudioRegistry() {
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/Pad.java b/PlayWallCore/src/de/tobias/playpad/pad/Pad.java
index 989dccaac2d9802ce8cc670393712ab494498759..a7e340fc5fb8f88eab2797e5d83fba1178445fdc 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/Pad.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/Pad.java
@@ -3,8 +3,8 @@ package de.tobias.playpad.pad;
 import java.nio.file.Path;
 import java.util.UUID;
 
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Pauseable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Pauseable;
 import de.tobias.playpad.pad.listener.trigger.PadTriggerContentListener;
 import de.tobias.playpad.pad.listener.trigger.PadTriggerDurationListener;
 import de.tobias.playpad.pad.listener.trigger.PadTriggerStatusListener;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/PadSerializer.java b/PlayWallCore/src/de/tobias/playpad/pad/PadSerializer.java
index ae1277b2447642dfc41472aca92a14501ce10461..8f91ebb2b175acefeca85124bce320d6196c8b2d 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/PadSerializer.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/PadSerializer.java
@@ -2,13 +2,13 @@ package de.tobias.playpad.pad;
 
 import java.util.UUID;
 
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.ContentFactory;
 import org.dom4j.Element;
 
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.design.CartDesign;
 import de.tobias.playpad.design.DesignFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.plugin.Module;
 import de.tobias.playpad.project.Project;
 import de.tobias.playpad.registry.DefaultRegistry;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/PadStatusListener.java b/PlayWallCore/src/de/tobias/playpad/pad/PadStatusListener.java
index 4b35b1dda9738148de908b7ea9e990a397337d82..f0d641051e54357468c82c94459df5c445f37c96 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/PadStatusListener.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/PadStatusListener.java
@@ -1,8 +1,11 @@
 package de.tobias.playpad.pad;
 
 import de.tobias.playpad.PlayPadPlugin;
-import de.tobias.playpad.pad.conntent.play.Fadeable;
-import de.tobias.playpad.pad.conntent.play.Pauseable;
+import de.tobias.playpad.pad.Pad;
+import de.tobias.playpad.pad.PadSettings;
+import de.tobias.playpad.pad.PadStatus;
+import de.tobias.playpad.pad.fade.Fadeable;
+import de.tobias.playpad.pad.content.play.Pauseable;
 import de.tobias.playpad.settings.Profile;
 import de.tobias.playpad.settings.ProfileSettings;
 import javafx.beans.value.ChangeListener;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/MultiPathContent.java b/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/MultiPathContent.java
deleted file mode 100644
index e10aa8b85e4e09a56b0e53e810fe03b8700bace9..0000000000000000000000000000000000000000
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/MultiPathContent.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package de.tobias.playpad.pad.conntent.path;
-
-import java.nio.file.Path;
-import java.util.List;
-
-public interface MultiPathContent {
-
-	public List<Path> getPaths();
-	
-	public void clearPaths();
-}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/SinglePathContent.java b/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/SinglePathContent.java
deleted file mode 100644
index 6f9dd3b1887b07e1324502846e9dd6cc826ed326..0000000000000000000000000000000000000000
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/path/SinglePathContent.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package de.tobias.playpad.pad.conntent.path;
-
-import java.nio.file.Path;
-
-public interface SinglePathContent {
-
-	public Path getPath();
-}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/FadeHandler.java b/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/FadeHandler.java
deleted file mode 100644
index 82224d7e7bc547c0154151fc5b0f3f8a31058a1f..0000000000000000000000000000000000000000
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/FadeHandler.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package de.tobias.playpad.pad.conntent.play;
-
-/**
- * Schnittstelle für das Pad, sodass es Lautstärke erhält.
- * 
- * @author tobias
- * 
- * @since 6.0.0
- */
-public interface FadeHandler {
-
-	void setFadeLevel(double level);
-}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/ContentFactory.java b/PlayWallCore/src/de/tobias/playpad/pad/content/ContentFactory.java
similarity index 93%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/ContentFactory.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/ContentFactory.java
index c4098bdd50474e586c4b3d9b2e5cc491b3b5964b..231df68c32699d3425205635e91ede89841cab19 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/ContentFactory.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/ContentFactory.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent;
+package de.tobias.playpad.pad.content;
 
 import java.nio.file.Path;
 
@@ -7,7 +7,6 @@ import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.registry.Component;
 import de.tobias.playpad.viewcontroller.PadSettingsTabViewController;
 import de.tobias.playpad.viewcontroller.option.ProfileSettingsTabViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 import de.tobias.utils.util.FileUtils;
 import javafx.scene.layout.Pane;
 
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContent.java b/PlayWallCore/src/de/tobias/playpad/pad/content/PadContent.java
similarity index 98%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContent.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/PadContent.java
index 31687a55309837b4319b84bee51d3f2f2febe26f..aaf592ba36d7b16892ba9be8e4cdcb396f1484b4 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContent.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/PadContent.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent;
+package de.tobias.playpad.pad.content;
 
 import java.io.IOException;
 import java.nio.file.Files;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContentRegistry.java b/PlayWallCore/src/de/tobias/playpad/pad/content/PadContentRegistry.java
similarity index 96%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContentRegistry.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/PadContentRegistry.java
index 7f1e6e584e850ba6e2a19db8b10323c55b8bbe80..bf9c589b4c86c13f1101c7fa2434c2ad2958f29d 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/PadContentRegistry.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/PadContentRegistry.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent;
+package de.tobias.playpad.pad.content;
 
 import java.nio.file.Path;
 import java.util.ArrayList;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/content/path/MultiPathContent.java b/PlayWallCore/src/de/tobias/playpad/pad/content/path/MultiPathContent.java
new file mode 100644
index 0000000000000000000000000000000000000000..5bf4264416199761b406710456af3468f1eeb740
--- /dev/null
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/path/MultiPathContent.java
@@ -0,0 +1,24 @@
+package de.tobias.playpad.pad.content.path;
+
+import java.nio.file.Path;
+import java.util.List;
+
+/**
+ * A PadContent should implement this interface, if the content consists of multiple files. If this interface is implemented, the program can easily obtain the media paths.
+ *
+ * @author tobias
+ *
+ */
+public interface MultiPathContent {
+
+	/**
+	 * Get a list of the used media files.
+	 * @return media files
+	 */
+	List<Path> getPaths();
+
+	/**
+	 * Clears all media path from the content.
+	 */
+	void clearPaths();
+}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/content/path/SinglePathContent.java b/PlayWallCore/src/de/tobias/playpad/pad/content/path/SinglePathContent.java
new file mode 100644
index 0000000000000000000000000000000000000000..37fae2f831f71118d74cb4d26a488587397a667c
--- /dev/null
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/path/SinglePathContent.java
@@ -0,0 +1,18 @@
+package de.tobias.playpad.pad.content.path;
+
+import java.nio.file.Path;
+
+/**
+ * A PadContent should implement this interface, if the content consists of one file. If this interface is implemented, the program can easily obtain the media path.
+ *
+ * @author tobias
+ *
+ */
+public interface SinglePathContent {
+
+	/**
+	 * Get the media path of the content.
+	 * @return media path
+	 */
+	Path getPath();
+}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Durationable.java b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Durationable.java
similarity index 87%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Durationable.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/play/Durationable.java
index 65a540c1ec880eb7bed8e984136698beb84adc2c..8b08c404f10df73b695c202c5ede50dc86877e2d 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Durationable.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Durationable.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent.play;
+package de.tobias.playpad.pad.content.play;
 
 import javafx.beans.property.ReadOnlyObjectProperty;
 import javafx.util.Duration;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Equalizeable.java b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Equalizeable.java
similarity index 80%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Equalizeable.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/play/Equalizeable.java
index 354d9e7ee910936fd369711ef4cfbc5f5f2a4ce4..9f7e597649ab3305884d2fbebcc55b98163b177b 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Equalizeable.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Equalizeable.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent.play;
+package de.tobias.playpad.pad.content.play;
 
 import de.tobias.playpad.audio.AudioFeature;
 import javafx.scene.media.AudioEqualizer;
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Pauseable.java b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Pauseable.java
similarity index 55%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Pauseable.java
rename to PlayWallCore/src/de/tobias/playpad/pad/content/play/Pauseable.java
index 626570458fb62e6183789990b30543f3d5a2871b..f14cdbe57833fd4e32126cfe2d205f2f9be6e581 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Pauseable.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/content/play/Pauseable.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent.play;
+package de.tobias.playpad.pad.content.play;
 
 public interface Pauseable {
 
diff --git a/PlayWallCore/src/de/tobias/playpad/audio/Fade.java b/PlayWallCore/src/de/tobias/playpad/pad/fade/Fade.java
similarity index 85%
rename from PlayWallCore/src/de/tobias/playpad/audio/Fade.java
rename to PlayWallCore/src/de/tobias/playpad/pad/fade/Fade.java
index 95ee85681dea7006a5fcba7dde21a221d8c5cc9c..602d0335af52cb99ff06af64b2a7a0a589d74d6f 100644
--- a/PlayWallCore/src/de/tobias/playpad/audio/Fade.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/fade/Fade.java
@@ -1,6 +1,5 @@
-package de.tobias.playpad.audio;
+package de.tobias.playpad.pad.fade;
 
-import de.tobias.playpad.pad.conntent.play.FadeHandler;
 import javafx.animation.Transition;
 import javafx.util.Duration;
 
@@ -12,13 +11,13 @@ import javafx.util.Duration;
  */
 public class Fade {
 
-	private FadeHandler fadeHandler;
+	private FadeDelegate fadeDelegate;
 	private Transition currentFadeTransition;
 
 	private double velocity = 1;
 
-	public Fade(FadeHandler fadeHandler) {
-		this.fadeHandler = fadeHandler;
+	public Fade(FadeDelegate fadeDelegate) {
+		this.fadeDelegate = fadeDelegate;
 	}
 
 	public void fadeIn(Duration duration) {
@@ -63,11 +62,11 @@ public class Fade {
 				double diff = Math.abs(to - from);
 				if (from < to) { // Fade In
 					double fade = fadeInVolumeMultiplier(frac, velocity);
-					fadeHandler.setFadeLevel(from + fade * diff);
+					fadeDelegate.onFadeLevelChange(from + fade * diff);
 				} else { // Fade Out
 					double fade = fadeOutVolumeMultiplier(frac, velocity);
 					double newValue = to + fade * diff;
-					fadeHandler.setFadeLevel(newValue);
+					fadeDelegate.onFadeLevelChange(newValue);
 				}
 			}
 		};
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/fade/FadeDelegate.java b/PlayWallCore/src/de/tobias/playpad/pad/fade/FadeDelegate.java
new file mode 100644
index 0000000000000000000000000000000000000000..3c7e49855c636f54ebf577814245059aa478524d
--- /dev/null
+++ b/PlayWallCore/src/de/tobias/playpad/pad/fade/FadeDelegate.java
@@ -0,0 +1,17 @@
+package de.tobias.playpad.pad.fade;
+
+/**
+ * Delegates the fade level.
+ *
+ * @author tobias
+ * @since 6.0.0
+ */
+public interface FadeDelegate {
+
+	/**
+	 * If the fade level is changed, the delegate performs this method. The faded object should update.
+	 *
+	 * @param level New Fadinglevel (0-1)
+	 */
+	void onFadeLevelChange(double level);
+}
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Fadeable.java b/PlayWallCore/src/de/tobias/playpad/pad/fade/Fadeable.java
similarity index 70%
rename from PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Fadeable.java
rename to PlayWallCore/src/de/tobias/playpad/pad/fade/Fadeable.java
index 32a59852e22934baf51e568cd65ed7469d8b2c67..94d3eb8ae05039c297ddfe3783ba1d6d6fe1bacf 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/conntent/play/Fadeable.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/fade/Fadeable.java
@@ -1,4 +1,4 @@
-package de.tobias.playpad.pad.conntent.play;
+package de.tobias.playpad.pad.fade;
 
 
 public interface Fadeable {
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerContentListener.java b/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerContentListener.java
index 5af0ab7826c370be0c4da8ba667f39363128aadb..09d08d491d8846561e33ac6dcfcfdf1fdff718fa 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerContentListener.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerContentListener.java
@@ -1,8 +1,8 @@
 package de.tobias.playpad.pad.listener.trigger;
 
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
 
diff --git a/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerDurationListener.java b/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerDurationListener.java
index 5307a77818fcfaebdd7ebc1d41ecca3290484a35..2ae39a2d480b9d2a121ff4075dee26520a73310c 100644
--- a/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerDurationListener.java
+++ b/PlayWallCore/src/de/tobias/playpad/pad/listener/trigger/PadTriggerDurationListener.java
@@ -3,8 +3,8 @@ package de.tobias.playpad.pad.listener.trigger;
 import de.tobias.playpad.PlayPadPlugin;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
 import de.tobias.playpad.settings.Profile;
 import de.tobias.playpad.tigger.Trigger;
 import de.tobias.playpad.tigger.TriggerPoint;
diff --git a/PluginEqualizer/src/de/tobias/playpad/equalizerplugin/main/impl/EqualizerPluginImpl.java b/PluginEqualizer/src/de/tobias/playpad/equalizerplugin/main/impl/EqualizerPluginImpl.java
index abcf7d80b925ceef1921994421bddbd1bc835314..ad318c7173910a32f262bccc293af92675c0e149 100644
--- a/PluginEqualizer/src/de/tobias/playpad/equalizerplugin/main/impl/EqualizerPluginImpl.java
+++ b/PluginEqualizer/src/de/tobias/playpad/equalizerplugin/main/impl/EqualizerPluginImpl.java
@@ -6,11 +6,11 @@ import java.util.ResourceBundle;
 import org.dom4j.DocumentException;
 
 import de.tobias.playpad.PlayPadPlugin;
-import de.tobias.playpad.pad.conntent.play.Equalizeable;
+import de.tobias.playpad.pad.content.play.Equalizeable;
 import de.tobias.playpad.equalizerplugin.main.Equalizer;
 import de.tobias.playpad.equalizerplugin.main.EqualizerPlugin;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.plugin.Module;
 import de.tobias.playpad.plugin.PadListener;
 import de.tobias.playpad.plugin.WindowListener;
diff --git a/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContent.java b/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContent.java
index 3ac375ec6c3908ba3f87aba5df14e77856501948..eb481313905ed703dbca022cf9adb11a6cb8c6eb 100644
--- a/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContent.java
+++ b/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContent.java
@@ -10,7 +10,7 @@ import org.dom4j.Element;
 import de.tobias.playpad.mediaplugin.main.impl.MediaPluginImpl;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.project.ProjectExporter;
 import de.tobias.utils.util.ZipFile;
 import javafx.application.Platform;
diff --git a/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContentConntect.java b/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContentConntect.java
index 2083881eafc8b33e9b4779b3df5c406db4a29175..143c0d7feee2e8963170fd70db49b88557d3264f 100644
--- a/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContentConntect.java
+++ b/PluginMedia/src/de/tobias/playpad/mediaplugin/image/ImageContentConntect.java
@@ -1,17 +1,10 @@
 package de.tobias.playpad.mediaplugin.image;
 
-import de.tobias.playpad.mediaplugin.main.impl.MediaPluginImpl;
-import de.tobias.playpad.mediaplugin.main.impl.Strings;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.ContentFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.viewcontroller.PadSettingsTabViewController;
-import de.tobias.utils.ui.icon.FontAwesomeType;
-import de.tobias.utils.ui.icon.FontIcon;
-import de.tobias.utils.ui.icon.FontIconType;
-import javafx.beans.property.SimpleStringProperty;
-import javafx.beans.property.StringProperty;
 import javafx.collections.ListChangeListener;
 import javafx.collections.SetChangeListener;
 import javafx.css.PseudoClass;
diff --git a/PluginMedia/src/de/tobias/playpad/mediaplugin/main/impl/MediaPluginImpl.java b/PluginMedia/src/de/tobias/playpad/mediaplugin/main/impl/MediaPluginImpl.java
index dcf83562da0a8004e6bd8b97e8a5960e7caf1028..6ce873e4e5985b81d3c999d302166021060207fc 100644
--- a/PluginMedia/src/de/tobias/playpad/mediaplugin/main/impl/MediaPluginImpl.java
+++ b/PluginMedia/src/de/tobias/playpad/mediaplugin/main/impl/MediaPluginImpl.java
@@ -5,7 +5,7 @@ import java.nio.file.NoSuchFileException;
 import java.nio.file.Path;
 import java.util.ResourceBundle;
 
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.ContentFactory;
 import org.dom4j.DocumentException;
 
 import de.tobias.playpad.PlayPadPlugin;
diff --git a/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContent.java b/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContent.java
index 94d02793e205456267219e42a319e764910dc237..d975de94f2b4de3b406e99a0c2b82ca95a478eff 100644
--- a/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContent.java
+++ b/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContent.java
@@ -11,9 +11,9 @@ import de.tobias.playpad.mediaplugin.main.impl.MediaPluginImpl;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadSettings;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.play.Durationable;
-import de.tobias.playpad.pad.conntent.play.Pauseable;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.play.Durationable;
+import de.tobias.playpad.pad.content.play.Pauseable;
 import de.tobias.playpad.project.ProjectExporter;
 import de.tobias.playpad.volume.VolumeManager;
 import de.tobias.utils.util.ZipFile;
diff --git a/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContentConntect.java b/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContentConntect.java
index b954ec39548f5bbf2eaa9cc28ef2743782c7f585..aa645710606cbfddf476c3426f4746ab63e147ab 100644
--- a/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContentConntect.java
+++ b/PluginMedia/src/de/tobias/playpad/mediaplugin/video/VideoContentConntect.java
@@ -2,18 +2,12 @@ package de.tobias.playpad.mediaplugin.video;
 
 import de.tobias.playpad.mediaplugin.main.impl.MediaPluginImpl;
 import de.tobias.playpad.mediaplugin.main.impl.MediaSettingsTabViewController;
-import de.tobias.playpad.mediaplugin.main.impl.Strings;
 import de.tobias.playpad.pad.Pad;
-import de.tobias.playpad.pad.conntent.PadContent;
-import de.tobias.playpad.pad.conntent.ContentFactory;
+import de.tobias.playpad.pad.content.PadContent;
+import de.tobias.playpad.pad.content.ContentFactory;
 import de.tobias.playpad.pad.view.IPadContentView;
 import de.tobias.playpad.viewcontroller.PadSettingsTabViewController;
 import de.tobias.playpad.viewcontroller.option.ProfileSettingsTabViewController;
-import de.tobias.utils.ui.icon.FontAwesomeType;
-import de.tobias.utils.ui.icon.FontIcon;
-import de.tobias.utils.ui.icon.FontIconType;
-import javafx.beans.property.SimpleStringProperty;
-import javafx.beans.property.StringProperty;
 import javafx.geometry.Pos;
 import javafx.scene.Node;
 import javafx.scene.control.Label;
diff --git a/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandler.java b/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandler.java
index 85e2368f1626d303894424847088d3a43199fd56..64dc4279cc0d1d73feb77bf16948e11413d2d2bf 100644
--- a/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandler.java
+++ b/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandler.java
@@ -6,7 +6,7 @@ import de.tobias.playpad.NativeAudio;
 import de.tobias.playpad.audio.AudioHandler;
 import de.tobias.playpad.audio.Peakable;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.utils.util.Worker;
 import javafx.application.Platform;
 import javafx.beans.property.DoubleProperty;
diff --git a/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandlerFactory.java b/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandlerFactory.java
index 1804405667f52bcae03c87f13a9f70c5c4fa1378..33a597428ddde9437fdf0c24bf5043d35d3c461d 100644
--- a/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandlerFactory.java
+++ b/PluginNativeMac/src/de/tobias/playpad/namac/NativeAudioMacHandlerFactory.java
@@ -9,9 +9,8 @@ import de.tobias.playpad.audio.AudioHandler;
 import de.tobias.playpad.audio.AudioHandlerFactory;
 import de.tobias.playpad.audio.Peakable.Channel;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 import javafx.util.Duration;
 
 public class NativeAudioMacHandlerFactory extends AudioHandlerFactory implements NativeAudioDelegate {
@@ -31,11 +30,6 @@ public class NativeAudioMacHandlerFactory extends AudioHandlerFactory implements
 		return nativeAudioMacHandler;
 	}
 
-	@Override
-	public AudioHandlerViewController getAudioHandlerSettingsViewController() {
-		return null;
-	}
-
 	@Override
 	public void onFinish(int id) {
 		NativeAudioMacHandler nativeAudioMacHandler = handlers.get(id);
@@ -65,7 +59,7 @@ public class NativeAudioMacHandlerFactory extends AudioHandlerFactory implements
 	}
 
 	@Override
-	public boolean isFeatureAvaiable(AudioCapability audioCapability) {
+	public boolean isFeatureAvailable(AudioCapability audioCapability) {
 		return false;
 	}
 
diff --git a/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandler.java b/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandler.java
index 5d7853e0ac4d7751c833966b875d3a1a127a53d5..dafed49784e6d02e663dbb614f2b39b30b8a4de4 100644
--- a/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandler.java
+++ b/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandler.java
@@ -10,7 +10,7 @@ import de.tobias.playpad.audio.AudioHandler;
 import de.tobias.playpad.audio.Soundcardable;
 import de.tobias.playpad.pad.Pad;
 import de.tobias.playpad.pad.PadStatus;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.settings.Profile;
 import javafx.application.Platform;
 import javafx.beans.property.ObjectProperty;
diff --git a/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandlerFactory.java b/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandlerFactory.java
index 9134d1984bbd419a87c6e100b63b08db2d4565d6..096fb28ccad0cf565f1b94919893b702d12c2f83 100644
--- a/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandlerFactory.java
+++ b/PluginNativeWin/src/de/tobias/playpad/nawin/audio/NativeAudioWinHandlerFactory.java
@@ -3,9 +3,8 @@ package de.tobias.playpad.nawin.audio;
 import de.tobias.playpad.audio.AudioCapability;
 import de.tobias.playpad.audio.AudioHandler;
 import de.tobias.playpad.audio.AudioHandlerFactory;
-import de.tobias.playpad.pad.conntent.PadContent;
+import de.tobias.playpad.pad.content.PadContent;
 import de.tobias.playpad.viewcontroller.AudioHandlerViewController;
-import de.tobias.utils.ui.icon.FontIconType;
 
 public class NativeAudioWinHandlerFactory extends AudioHandlerFactory {
 
@@ -17,14 +16,9 @@ public class NativeAudioWinHandlerFactory extends AudioHandlerFactory {
 	public AudioHandler createAudioHandler(PadContent content) {
 		return new NativeAudioWinHandler(content);
 	}
-
-	@Override
-	public AudioHandlerViewController getAudioHandlerSettingsViewController() {
-		return null;
-	}
 	
 	@Override
-	public boolean isFeatureAvaiable(AudioCapability audioCapability) {
+	public boolean isFeatureAvailable(AudioCapability audioCapability) {
 		for (Class<?> clazz : NativeAudioWinHandler.class.getInterfaces()) {
 			if (clazz.equals(audioCapability.getAudioFeature()))
 				return true;