diff --git a/addons/TestAddon/TestAddon.csproj b/addons/TestAddon/TestAddon.csproj
index 2dfee4f..405cee8 100644
--- a/addons/TestAddon/TestAddon.csproj
+++ b/addons/TestAddon/TestAddon.csproj
@@ -30,6 +30,42 @@
prompt
4
+
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE
+ full
+ x64
+ prompt
+ MinimumRecommendedRules.ruleset
+
+
+ bin\x64\Release\
+ TRACE
+ true
+ pdbonly
+ x64
+ prompt
+ MinimumRecommendedRules.ruleset
+
+
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE
+ full
+ x86
+ prompt
+ MinimumRecommendedRules.ruleset
+
+
+ bin\x86\Release\
+ TRACE
+ true
+ pdbonly
+ x86
+ prompt
+ MinimumRecommendedRules.ruleset
+
diff --git a/img/ConfEditor.png b/img/ConfEditor.png
index 6089142..d849265 100644
Binary files a/img/ConfEditor.png and b/img/ConfEditor.png differ
diff --git a/mpv.net.sln b/mpv.net.sln
index f828ad6..5631732 100644
--- a/mpv.net.sln
+++ b/mpv.net.sln
@@ -59,10 +59,10 @@ Global
{55C88710-539D-4402-84C8-31694841C731}.Release|x86.Build.0 = Release|x86
{06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x64.ActiveCfg = Debug|Any CPU
- {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x64.Build.0 = Debug|Any CPU
- {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x86.ActiveCfg = Debug|Any CPU
- {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x86.Build.0 = Debug|Any CPU
+ {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x64.ActiveCfg = Debug|x64
+ {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x64.Build.0 = Debug|x64
+ {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x86.ActiveCfg = Debug|x86
+ {06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Debug|x86.Build.0 = Debug|x86
{06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Release|Any CPU.Build.0 = Release|Any CPU
{06F854B0-00F9-4B53-94D9-0BE65A7C55D8}.Release|x64.ActiveCfg = Release|Any CPU
diff --git a/mpv.net/Addon.cs b/mpv.net/Misc/Addon.cs
similarity index 100%
rename from mpv.net/Addon.cs
rename to mpv.net/Misc/Addon.cs
diff --git a/mpv.net/Command.cs b/mpv.net/Misc/Command.cs
similarity index 100%
rename from mpv.net/Command.cs
rename to mpv.net/Misc/Command.cs
diff --git a/mpv.net/Misc.cs b/mpv.net/Misc/Misc.cs
similarity index 100%
rename from mpv.net/Misc.cs
rename to mpv.net/Misc/Misc.cs
diff --git a/mpv.net/Program.cs b/mpv.net/Misc/Program.cs
similarity index 100%
rename from mpv.net/Program.cs
rename to mpv.net/Misc/Program.cs
diff --git a/mpv.net/MediaInfo.cs b/mpv.net/Native/MediaInfo.cs
similarity index 100%
rename from mpv.net/MediaInfo.cs
rename to mpv.net/Native/MediaInfo.cs
diff --git a/mpv.net/Native.cs b/mpv.net/Native/Native.cs
similarity index 100%
rename from mpv.net/Native.cs
rename to mpv.net/Native/Native.cs
diff --git a/mpv.net/NativeHelp.cs b/mpv.net/Native/NativeHelp.cs
similarity index 100%
rename from mpv.net/NativeHelp.cs
rename to mpv.net/Native/NativeHelp.cs
diff --git a/mpv.net/TaskDialog.cs b/mpv.net/Native/TaskDialog.cs
similarity index 100%
rename from mpv.net/TaskDialog.cs
rename to mpv.net/Native/TaskDialog.cs
diff --git a/mpv.net/PowerShellScript.cs b/mpv.net/Scripting/PowerShellScript.cs
similarity index 100%
rename from mpv.net/PowerShellScript.cs
rename to mpv.net/Scripting/PowerShellScript.cs
diff --git a/mpv.net/PythonScript.cs b/mpv.net/Scripting/PythonScript.cs
similarity index 100%
rename from mpv.net/PythonScript.cs
rename to mpv.net/Scripting/PythonScript.cs
diff --git a/mpv.net/Windows/AboutWindow.xaml b/mpv.net/WPF/AboutWindow.xaml
similarity index 100%
rename from mpv.net/Windows/AboutWindow.xaml
rename to mpv.net/WPF/AboutWindow.xaml
diff --git a/mpv.net/Windows/AboutWindow.xaml.cs b/mpv.net/WPF/AboutWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/AboutWindow.xaml.cs
rename to mpv.net/WPF/AboutWindow.xaml.cs
diff --git a/mpv.net/Windows/CommandPaletteWindow.xaml b/mpv.net/WPF/CommandPaletteWindow.xaml
similarity index 100%
rename from mpv.net/Windows/CommandPaletteWindow.xaml
rename to mpv.net/WPF/CommandPaletteWindow.xaml
diff --git a/mpv.net/Windows/CommandPaletteWindow.xaml.cs b/mpv.net/WPF/CommandPaletteWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/CommandPaletteWindow.xaml.cs
rename to mpv.net/WPF/CommandPaletteWindow.xaml.cs
diff --git a/mpv.net/Windows/ConfWindow.xaml b/mpv.net/WPF/ConfWindow.xaml
similarity index 100%
rename from mpv.net/Windows/ConfWindow.xaml
rename to mpv.net/WPF/ConfWindow.xaml
diff --git a/mpv.net/Windows/ConfWindow.xaml.cs b/mpv.net/WPF/ConfWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/ConfWindow.xaml.cs
rename to mpv.net/WPF/ConfWindow.xaml.cs
diff --git a/mpv.net/Windows/EverythingWindow.xaml b/mpv.net/WPF/EverythingWindow.xaml
similarity index 100%
rename from mpv.net/Windows/EverythingWindow.xaml
rename to mpv.net/WPF/EverythingWindow.xaml
diff --git a/mpv.net/Windows/EverythingWindow.xaml.cs b/mpv.net/WPF/EverythingWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/EverythingWindow.xaml.cs
rename to mpv.net/WPF/EverythingWindow.xaml.cs
diff --git a/mpv.net/Windows/InputWindow.xaml b/mpv.net/WPF/InputWindow.xaml
similarity index 100%
rename from mpv.net/Windows/InputWindow.xaml
rename to mpv.net/WPF/InputWindow.xaml
diff --git a/mpv.net/Windows/InputWindow.xaml.cs b/mpv.net/WPF/InputWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/InputWindow.xaml.cs
rename to mpv.net/WPF/InputWindow.xaml.cs
diff --git a/mpv.net/Windows/LearnWindow.xaml b/mpv.net/WPF/LearnWindow.xaml
similarity index 100%
rename from mpv.net/Windows/LearnWindow.xaml
rename to mpv.net/WPF/LearnWindow.xaml
diff --git a/mpv.net/Windows/LearnWindow.xaml.cs b/mpv.net/WPF/LearnWindow.xaml.cs
similarity index 100%
rename from mpv.net/Windows/LearnWindow.xaml.cs
rename to mpv.net/WPF/LearnWindow.xaml.cs
diff --git a/mpv.net/MainForm.Designer.cs b/mpv.net/WinForms/MainForm.Designer.cs
similarity index 100%
rename from mpv.net/MainForm.Designer.cs
rename to mpv.net/WinForms/MainForm.Designer.cs
diff --git a/mpv.net/MainForm.cs b/mpv.net/WinForms/MainForm.cs
similarity index 100%
rename from mpv.net/MainForm.cs
rename to mpv.net/WinForms/MainForm.cs
diff --git a/mpv.net/MainForm.resx b/mpv.net/WinForms/MainForm.resx
similarity index 100%
rename from mpv.net/MainForm.resx
rename to mpv.net/WinForms/MainForm.resx
diff --git a/mpv.net/Menu.cs b/mpv.net/WinForms/Menu.cs
similarity index 100%
rename from mpv.net/Menu.cs
rename to mpv.net/WinForms/Menu.cs
diff --git a/mpv.net/mpv.net.csproj b/mpv.net/mpv.net.csproj
index dc8ea9b..c7b06ec 100644
--- a/mpv.net/mpv.net.csproj
+++ b/mpv.net/mpv.net.csproj
@@ -137,20 +137,20 @@
-
+
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
@@ -169,53 +169,52 @@
StringSettingControl.xaml
-
-
+
+
Component
-
+
True
True
Resources.resx
-
-
-
+
+
+
Form
-
+
MainForm.cs
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
EverythingWindow.xaml
-
+
CommandPaletteWindow.xaml
-
+
ConfWindow.xaml
-
+
AboutWindow.xaml
-
+
LearnWindow.xaml
-
+
InputWindow.xaml
-
-
+
MainForm.cs
Designer
@@ -263,19 +262,20 @@
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
-
+
MSBuild:Compile
Designer
+