diff --git a/Kaitai.Struct.Runtime.Async.Tests/Kaitai.Struct.Runtime.Async.Tests.csproj b/Kaitai.Struct.Runtime.Async.Tests/Kaitai.Struct.Runtime.Async.Tests.csproj
new file mode 100644
index 0000000..a2352e4
--- /dev/null
+++ b/Kaitai.Struct.Runtime.Async.Tests/Kaitai.Struct.Runtime.Async.Tests.csproj
@@ -0,0 +1,16 @@
+
+
+
+ netcoreapp3.1
+
+ false
+
+
+
+
+
+
+
+
+
+
diff --git a/Kaitai.Struct.Runtime.Async/Kaitai.Struct.Runtime.Async.csproj b/Kaitai.Struct.Runtime.Async/Kaitai.Struct.Runtime.Async.csproj
new file mode 100644
index 0000000..cb63190
--- /dev/null
+++ b/Kaitai.Struct.Runtime.Async/Kaitai.Struct.Runtime.Async.csproj
@@ -0,0 +1,7 @@
+
+
+
+ netcoreapp3.1
+
+
+
diff --git a/.editorconfig b/Kaitai.Struct.Runtime/.editorconfig
similarity index 100%
rename from .editorconfig
rename to Kaitai.Struct.Runtime/.editorconfig
diff --git a/Exception/KaitaiStructError.cs b/Kaitai.Struct.Runtime/Exception/KaitaiStructError.cs
similarity index 100%
rename from Exception/KaitaiStructError.cs
rename to Kaitai.Struct.Runtime/Exception/KaitaiStructError.cs
diff --git a/Exception/ValidationFailedError.cs b/Kaitai.Struct.Runtime/Exception/ValidationFailedError.cs
similarity index 100%
rename from Exception/ValidationFailedError.cs
rename to Kaitai.Struct.Runtime/Exception/ValidationFailedError.cs
diff --git a/Exception/ValidationNotEqualError.cs b/Kaitai.Struct.Runtime/Exception/ValidationNotEqualError.cs
similarity index 100%
rename from Exception/ValidationNotEqualError.cs
rename to Kaitai.Struct.Runtime/Exception/ValidationNotEqualError.cs
diff --git a/Interface/CustomDecoder.cs b/Kaitai.Struct.Runtime/Interface/CustomDecoder.cs
similarity index 100%
rename from Interface/CustomDecoder.cs
rename to Kaitai.Struct.Runtime/Interface/CustomDecoder.cs
diff --git a/Interface/IKaitaiStream.cs b/Kaitai.Struct.Runtime/Interface/IKaitaiStream.cs
similarity index 100%
rename from Interface/IKaitaiStream.cs
rename to Kaitai.Struct.Runtime/Interface/IKaitaiStream.cs
diff --git a/Kaitai.Struct.Runtime/Kaitai.Struct.Runtime.csproj b/Kaitai.Struct.Runtime/Kaitai.Struct.Runtime.csproj
new file mode 100644
index 0000000..61fd5c9
--- /dev/null
+++ b/Kaitai.Struct.Runtime/Kaitai.Struct.Runtime.csproj
@@ -0,0 +1,37 @@
+
+
+
+ netstandard1.3;net45
+ true
+ 1701;1702;CS1591
+ {8339A750-C407-4CE8-8E31-51CB2EFD3A4B}
+
+
+
+ KaitaiStruct.Runtime.CSharp
+
+ Kaitai Project
+ This library implements Kaitai Struct API for C#.
+ Kaitai Struct Runtime
+ Copyright © Kaitai Project 2016-2019
+ Kaitai.Struct.Runtime
+ Kaitai
+ http://kaitai.io/
+ https://github.com/kaitai-io/kaitai_struct_csharp_runtime
+ Kaitai Struct File-Format Binary Protocols
+ LICENSE.txt
+ icon.png
+
+ 0.8.0.0
+ 0.8.0.0
+ 0.8.0.0
+
+
+
+
+
+
+
+
+
+
diff --git a/KaitaiStream.cs b/Kaitai.Struct.Runtime/KaitaiStream.cs
similarity index 100%
rename from KaitaiStream.cs
rename to Kaitai.Struct.Runtime/KaitaiStream.cs
diff --git a/KaitaiStruct.cs b/Kaitai.Struct.Runtime/KaitaiStruct.cs
similarity index 100%
rename from KaitaiStruct.cs
rename to Kaitai.Struct.Runtime/KaitaiStruct.cs
diff --git a/LICENSE.txt b/Kaitai.Struct.Runtime/LICENSE.txt
similarity index 100%
rename from LICENSE.txt
rename to Kaitai.Struct.Runtime/LICENSE.txt
diff --git a/README.md b/Kaitai.Struct.Runtime/README.md
similarity index 100%
rename from README.md
rename to Kaitai.Struct.Runtime/README.md
diff --git a/icon.png b/Kaitai.Struct.Runtime/icon.png
similarity index 100%
rename from icon.png
rename to Kaitai.Struct.Runtime/icon.png
diff --git a/Kaitai.Struct.sln b/Kaitai.Struct.sln
new file mode 100644
index 0000000..ed6e1e4
--- /dev/null
+++ b/Kaitai.Struct.sln
@@ -0,0 +1,37 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29418.71
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kaitai.Struct.Runtime", "Kaitai.Struct.Runtime\Kaitai.Struct.Runtime.csproj", "{5E981335-06A9-46DE-9BD2-312B2CD329A4}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kaitai.Struct.Runtime.Async", "Kaitai.Struct.Runtime.Async\Kaitai.Struct.Runtime.Async.csproj", "{33BAA91F-0777-466A-B379-65B85F8E7793}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kaitai.Struct.Runtime.Async.Tests", "Kaitai.Struct.Runtime.Async.Tests\Kaitai.Struct.Runtime.Async.Tests.csproj", "{551D67ED-04AA-49CB-8430-33B6097854A6}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {5E981335-06A9-46DE-9BD2-312B2CD329A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5E981335-06A9-46DE-9BD2-312B2CD329A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5E981335-06A9-46DE-9BD2-312B2CD329A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5E981335-06A9-46DE-9BD2-312B2CD329A4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {33BAA91F-0777-466A-B379-65B85F8E7793}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {33BAA91F-0777-466A-B379-65B85F8E7793}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {33BAA91F-0777-466A-B379-65B85F8E7793}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {33BAA91F-0777-466A-B379-65B85F8E7793}.Release|Any CPU.Build.0 = Release|Any CPU
+ {551D67ED-04AA-49CB-8430-33B6097854A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {551D67ED-04AA-49CB-8430-33B6097854A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {551D67ED-04AA-49CB-8430-33B6097854A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {551D67ED-04AA-49CB-8430-33B6097854A6}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {22936F10-7B00-4CED-ADCF-2F9B4DA7F101}
+ EndGlobalSection
+EndGlobal
diff --git a/Kaitai.Struct.sln.DotSettings b/Kaitai.Struct.sln.DotSettings
new file mode 100644
index 0000000..98f62ff
--- /dev/null
+++ b/Kaitai.Struct.sln.DotSettings
@@ -0,0 +1,3 @@
+
+ True
+ True
\ No newline at end of file
diff --git a/kaitai_struct_runtime_csharp.csproj b/kaitai_struct_runtime_csharp.csproj
deleted file mode 100644
index 5670c7b..0000000
--- a/kaitai_struct_runtime_csharp.csproj
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
- netstandard1.3;net4.5
- true
- 1701;1702;CS1591
-
-
-
- KaitaiStruct.Runtime.CSharp
-
- Kaitai Project
- This library implements Kaitai Struct API for C#.
- Kaitai Struct Runtime
- Copyright © Kaitai Project 2016-2019
- Kaitai.Struct.Runtime
- Kaitai
- http://kaitai.io/
- https://github.com/kaitai-io/kaitai_struct_csharp_runtime
- Kaitai Struct File-Format Binary Protocols
- LICENSE.txt
- icon.png
-
- 0.8.0.0
- 0.8.0.0
- 0.8.0.0
-
-
-
-
-
-
-
-
-
-