diff --git a/.idea/artifacts/PluginAction_jar.xml b/.idea/artifacts/PluginAction_jar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..36b579be153c93ea3052bbc0c7db2647f25197e3
--- /dev/null
+++ b/.idea/artifacts/PluginAction_jar.xml
@@ -0,0 +1,22 @@
+<component name="ArtifactManager">
+  <artifact type="jar" name="PluginAction:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/PluginAction_jar</output-path>
+    <root id="archive" name="PluginAction.jar">
+      <element id="module-output" name="PluginAction" />
+      <element id="module-output" name="PlayWallCore" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/tinysound-1.1.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/jorbis-0.0.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/tritonus_share.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/vorbisspi1.0.3.jar" path-in-jar="/" />
+      <element id="library" level="project" name="Updater" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/JLayer1.0.1/jl1.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/guava-15.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/snakeyaml-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/YAMLStorage.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/Json/json-smart-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/XML/dom4j-1.6.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/jspf/dist/jspf.core-1.0.2.jar" path-in-jar="/" />
+      <element id="library" level="project" name="libUtils" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/.idea/artifacts/PluginAwake_jar.xml b/.idea/artifacts/PluginAwake_jar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..968db9e997d707a760e3017113505bd987a31067
--- /dev/null
+++ b/.idea/artifacts/PluginAwake_jar.xml
@@ -0,0 +1,22 @@
+<component name="ArtifactManager">
+  <artifact type="jar" name="PluginAwake:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/PluginAwake_jar</output-path>
+    <root id="archive" name="PluginAwake.jar">
+      <element id="module-output" name="PluginAwake" />
+      <element id="module-output" name="PlayWallCore" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/tinysound-1.1.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/jorbis-0.0.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/tritonus_share.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/vorbisspi1.0.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/JLayer1.0.1/jl1.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/guava-15.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/snakeyaml-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/YAMLStorage.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/Json/json-smart-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/XML/dom4j-1.6.1.jar" path-in-jar="/" />
+      <element id="library" level="project" name="Updater" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/jspf/dist/jspf.core-1.0.2.jar" path-in-jar="/" />
+      <element id="library" level="project" name="libUtils" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/.idea/artifacts/PluginEqualizer_jar.xml b/.idea/artifacts/PluginEqualizer_jar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..1c26854c8d26238f75fbac30ebe2fb64e47b5e2e
--- /dev/null
+++ b/.idea/artifacts/PluginEqualizer_jar.xml
@@ -0,0 +1,22 @@
+<component name="ArtifactManager">
+  <artifact type="jar" name="PluginEqualizer:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/PluginEqualizer_jar</output-path>
+    <root id="archive" name="PluginEqualizer.jar">
+      <element id="module-output" name="PluginEqualizer" />
+      <element id="module-output" name="PlayWallCore" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/tinysound-1.1.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/jorbis-0.0.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/tritonus_share.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/vorbisspi1.0.3.jar" path-in-jar="/" />
+      <element id="library" level="project" name="Updater" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/JLayer1.0.1/jl1.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/guava-15.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/snakeyaml-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/YAMLStorage.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/Json/json-smart-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/XML/dom4j-1.6.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/jspf/dist/jspf.core-1.0.2.jar" path-in-jar="/" />
+      <element id="library" level="project" name="libUtils" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/.idea/artifacts/PluginLaunchpad_jar.xml b/.idea/artifacts/PluginLaunchpad_jar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..34adb9e12bc3d69e08d02fea0e20b4f9bfd81180
--- /dev/null
+++ b/.idea/artifacts/PluginLaunchpad_jar.xml
@@ -0,0 +1,22 @@
+<component name="ArtifactManager">
+  <artifact type="jar" name="PluginLaunchpad:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/PluginLaunchpad_jar</output-path>
+    <root id="archive" name="PluginLaunchpad.jar">
+      <element id="module-output" name="PluginLaunchpad" />
+      <element id="module-output" name="PlayWallCore" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/XML/dom4j-1.6.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/tinysound-1.1.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/jorbis-0.0.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/tritonus_share.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/vorbisspi1.0.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/JLayer1.0.1/jl1.0.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/guava-15.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/snakeyaml-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/YAMLStorage.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/Json/json-smart-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/jspf/dist/jspf.core-1.0.2.jar" path-in-jar="/" />
+      <element id="library" level="project" name="Updater" />
+      <element id="library" level="project" name="libUtils" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/.idea/artifacts/PluginMedia_jar.xml b/.idea/artifacts/PluginMedia_jar.xml
new file mode 100644
index 0000000000000000000000000000000000000000..07dd1f332f7977271f8b696eba35bb5b4fafd346
--- /dev/null
+++ b/.idea/artifacts/PluginMedia_jar.xml
@@ -0,0 +1,22 @@
+<component name="ArtifactManager">
+  <artifact type="jar" name="PluginMedia:jar">
+    <output-path>$PROJECT_DIR$/out/artifacts/PluginMedia_jar</output-path>
+    <root id="archive" name="PluginMedia.jar">
+      <element id="module-output" name="PluginMedia" />
+      <element id="module-output" name="PlayWallCore" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/tinysound-1.1.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/jorbis-0.0.17.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/tritonus_share.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/tinysound/lib/vorbisspi1.0.3.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/JLayer1.0.1/jl1.0.1.jar" path-in-jar="/" />
+      <element id="library" level="project" name="libUtils" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/guava-15.0.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/snakeyaml-1.11.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/YAML/YAMLStorage.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/Json/json-smart-1.2.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/File Parser/XML/dom4j-1.6.1.jar" path-in-jar="/" />
+      <element id="extracted-dir" path="$PROJECT_DIR$/../../Libraries/jspf/dist/jspf.core-1.0.2.jar" path-in-jar="/" />
+      <element id="library" level="project" name="Updater" />
+    </root>
+  </artifact>
+</component>
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index ad17cc3e24ffd725ef05cd615593eedf055a3a25..44386dce8b74aecac4cfc0dc05279a45eb0fc004 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -3,6 +3,11 @@
   <component name="ArtifactsWorkspaceSettings">
     <artifacts-to-build>
       <artifact name="PlayWall:jar" />
+      <artifact name="PluginAction:jar" />
+      <artifact name="PluginAwake:jar" />
+      <artifact name="PluginEqualizer:jar" />
+      <artifact name="PluginLaunchpad:jar" />
+      <artifact name="PluginMedia:jar" />
     </artifacts-to-build>
   </component>
   <component name="ChangeListManager">
@@ -362,14 +367,14 @@
     <editor active="false" />
     <layout>
       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32953367" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
-      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32953367" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
+      <window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32953367" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Palette&#9;" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32953367" sideWeight="0.50605583" order="7" side_tool="true" content_ui="tabs" />
       <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.32953367" sideWeight="0.49394417" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32953367" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
       <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
-      <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.18325435" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.18325435" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
       <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32953367" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24960506" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
       <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
@@ -573,6 +578,14 @@
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/PluginAwake/src/de/tobias/playpad/awakeplugin/impl/AwakePluginImpl.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="223">
+          <caret line="166" column="43" lean-forward="true" selection-start-line="166" selection-start-column="43" selection-end-line="166" selection-end-column="43" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
   </component>
   <component name="masterDetails">
     <states>
@@ -616,12 +629,11 @@
       </state>
       <state key="ModuleStructureConfigurable.UI">
         <settings>
-          <last-edited>PlayWallNativeWin</last-edited>
+          <last-edited>PlayWall</last-edited>
           <splitter-proportions>
             <option name="proportions">
               <list>
                 <option value="0.2" />
-                <option value="0.6" />
               </list>
             </option>
           </splitter-proportions>
diff --git a/PlayWall/PlayWall.iml b/PlayWall/PlayWall.iml
index fed4135d0f0630825e9f23dad02ab117d5d6ec5c..85a817c4a53d3894cb81c422bccf7304f87aab97 100644
--- a/PlayWall/PlayWall.iml
+++ b/PlayWall/PlayWall.iml
@@ -1,8 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <module type="JAVA_MODULE" version="4">
-  <component name="NewModuleRootManager" inherit-compiler-output="false">
-    <output url="file://$MODULE_DIR$/bin" />
-    <output-test url="file://$MODULE_DIR$/bin-test" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
     <exclude-output />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
diff --git a/PlayWallCore/PlayWallCore.iml b/PlayWallCore/PlayWallCore.iml
index c29f39f9db3eeff7496a9cad8c52d5ad93bba294..636b134af526964fefcfa1d2fa2b2b9b826d0bf1 100644
--- a/PlayWallCore/PlayWallCore.iml
+++ b/PlayWallCore/PlayWallCore.iml
@@ -1,8 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <module type="JAVA_MODULE" version="4">
-  <component name="NewModuleRootManager" inherit-compiler-output="false">
-    <output url="file://$MODULE_DIR$/bin" />
-    <output-test url="file://$MODULE_DIR$/bin-test" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
     <exclude-output />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
diff --git a/PlayWallNative/.gitignore b/PlayWallNative/.gitignore
deleted file mode 100644
index ae3c1726048cd06b9a143e0376ed46dd9b9a8d53..0000000000000000000000000000000000000000
--- a/PlayWallNative/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin/
diff --git a/PlayWallNativeMac/PlayWallNativeMac.iml b/PlayWallNativeMac/PlayWallNativeMac.iml
index 78a5c4728ccc734232a7841b00551357f948b129..2a3ad1db1caa5f0e1405259f08b6008d172da775 100644
--- a/PlayWallNativeMac/PlayWallNativeMac.iml
+++ b/PlayWallNativeMac/PlayWallNativeMac.iml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <module type="JAVA_MODULE" version="4">
-  <component name="NewModuleRootManager" inherit-compiler-output="false">
-    <output url="file://$MODULE_DIR$/bin" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
     <exclude-output />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
diff --git a/PlayWallNativeWin/PlayWallNativeWin.iml b/PlayWallNativeWin/PlayWallNativeWin.iml
index c3714a7ac18d4c013b1f1032a571fc555752af3b..62c236dcde9bb6517fab80b08f400f26851e0eaa 100644
--- a/PlayWallNativeWin/PlayWallNativeWin.iml
+++ b/PlayWallNativeWin/PlayWallNativeWin.iml
@@ -7,8 +7,7 @@
       <src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
     </src_description>
   </component>
-  <component name="NewModuleRootManager" inherit-compiler-output="false">
-    <output url="file://$MODULE_DIR$/bin" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
     <exclude-output />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
diff --git a/PluginAwake/PluginAwake.iml b/PluginAwake/PluginAwake.iml
index 69f2e57031383d1bb982897e6c68b9038fbe4ae6..cac4fbf2f05bf091fff4f205142a686b1ea6c466 100644
--- a/PluginAwake/PluginAwake.iml
+++ b/PluginAwake/PluginAwake.iml
@@ -12,6 +12,7 @@
     <orderEntry type="library" exported="" name="XML" level="project" />
     <orderEntry type="library" exported="" name="YML" level="project" />
     <orderEntry type="library" exported="" name="Updater" level="project" />
+    <orderEntry type="library" exported="" name="JNA" level="project" />
     <orderEntry type="module" module-name="PlayWallCore" exported="" />
   </component>
 </module>
\ No newline at end of file