diff --git a/src/Umbraco.Core/Collections/DeepCloneableList.cs b/src/Umbraco.Abstractions/Collections/DeepCloneableList.cs
similarity index 98%
rename from src/Umbraco.Core/Collections/DeepCloneableList.cs
rename to src/Umbraco.Abstractions/Collections/DeepCloneableList.cs
index 48d35efde9..a21c7aae56 100644
--- a/src/Umbraco.Core/Collections/DeepCloneableList.cs
+++ b/src/Umbraco.Abstractions/Collections/DeepCloneableList.cs
@@ -10,7 +10,7 @@ namespace Umbraco.Core.Collections
/// A List that can be deep cloned with deep cloned elements and can reset the collection's items dirty flags
///
///
- internal class DeepCloneableList : List, IDeepCloneable, IRememberBeingDirty
+ public class DeepCloneableList : List, IDeepCloneable, IRememberBeingDirty
{
private readonly ListCloneBehavior _listCloneBehavior;
diff --git a/src/Umbraco.Core/Collections/ListCloneBehavior.cs b/src/Umbraco.Abstractions/Collections/ListCloneBehavior.cs
similarity index 92%
rename from src/Umbraco.Core/Collections/ListCloneBehavior.cs
rename to src/Umbraco.Abstractions/Collections/ListCloneBehavior.cs
index 14c6a0841f..539afca21a 100644
--- a/src/Umbraco.Core/Collections/ListCloneBehavior.cs
+++ b/src/Umbraco.Abstractions/Collections/ListCloneBehavior.cs
@@ -1,6 +1,6 @@
namespace Umbraco.Core.Collections
{
- internal enum ListCloneBehavior
+ public enum ListCloneBehavior
{
///
/// When set, DeepClone will clone the items one time and the result list behavior will be None
diff --git a/src/Umbraco.Core/Models/ContentVariation.cs b/src/Umbraco.Abstractions/Models/ContentVariation.cs
similarity index 100%
rename from src/Umbraco.Core/Models/ContentVariation.cs
rename to src/Umbraco.Abstractions/Models/ContentVariation.cs
diff --git a/src/Umbraco.Core/Models/DoNotCloneAttribute.cs b/src/Umbraco.Abstractions/Models/DoNotCloneAttribute.cs
similarity index 100%
rename from src/Umbraco.Core/Models/DoNotCloneAttribute.cs
rename to src/Umbraco.Abstractions/Models/DoNotCloneAttribute.cs
diff --git a/src/Umbraco.Core/Models/Entities/BeingDirty.cs b/src/Umbraco.Abstractions/Models/Entities/BeingDirty.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/BeingDirty.cs
rename to src/Umbraco.Abstractions/Models/Entities/BeingDirty.cs
diff --git a/src/Umbraco.Core/Models/Entities/BeingDirtyBase.cs b/src/Umbraco.Abstractions/Models/Entities/BeingDirtyBase.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/BeingDirtyBase.cs
rename to src/Umbraco.Abstractions/Models/Entities/BeingDirtyBase.cs
diff --git a/src/Umbraco.Core/Models/Entities/ContentEntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/ContentEntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/ContentEntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/ContentEntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/DocumentEntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/DocumentEntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/DocumentEntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/DocumentEntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/EntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/EntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/EntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/EntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/ICanBeDirty.cs b/src/Umbraco.Abstractions/Models/Entities/ICanBeDirty.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/ICanBeDirty.cs
rename to src/Umbraco.Abstractions/Models/Entities/ICanBeDirty.cs
diff --git a/src/Umbraco.Core/Models/Entities/IContentEntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/IContentEntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IContentEntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/IContentEntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/IDocumentEntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/IDocumentEntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IDocumentEntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/IDocumentEntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/IEntity.cs b/src/Umbraco.Abstractions/Models/Entities/IEntity.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IEntity.cs
rename to src/Umbraco.Abstractions/Models/Entities/IEntity.cs
diff --git a/src/Umbraco.Core/Models/Entities/IEntitySlim.cs b/src/Umbraco.Abstractions/Models/Entities/IEntitySlim.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IEntitySlim.cs
rename to src/Umbraco.Abstractions/Models/Entities/IEntitySlim.cs
diff --git a/src/Umbraco.Core/Models/Entities/IHaveAdditionalData.cs b/src/Umbraco.Abstractions/Models/Entities/IHaveAdditionalData.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IHaveAdditionalData.cs
rename to src/Umbraco.Abstractions/Models/Entities/IHaveAdditionalData.cs
diff --git a/src/Umbraco.Core/Models/Entities/IRememberBeingDirty.cs b/src/Umbraco.Abstractions/Models/Entities/IRememberBeingDirty.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IRememberBeingDirty.cs
rename to src/Umbraco.Abstractions/Models/Entities/IRememberBeingDirty.cs
diff --git a/src/Umbraco.Core/Models/Entities/ITreeEntity.cs b/src/Umbraco.Abstractions/Models/Entities/ITreeEntity.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/ITreeEntity.cs
rename to src/Umbraco.Abstractions/Models/Entities/ITreeEntity.cs
diff --git a/src/Umbraco.Core/Models/Entities/IUmbracoEntity.cs b/src/Umbraco.Abstractions/Models/Entities/IUmbracoEntity.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IUmbracoEntity.cs
rename to src/Umbraco.Abstractions/Models/Entities/IUmbracoEntity.cs
diff --git a/src/Umbraco.Core/Models/Entities/IValueObject.cs b/src/Umbraco.Abstractions/Models/Entities/IValueObject.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/IValueObject.cs
rename to src/Umbraco.Abstractions/Models/Entities/IValueObject.cs
diff --git a/src/Umbraco.Core/Models/Entities/TreeEntityPath.cs b/src/Umbraco.Abstractions/Models/Entities/TreeEntityPath.cs
similarity index 100%
rename from src/Umbraco.Core/Models/Entities/TreeEntityPath.cs
rename to src/Umbraco.Abstractions/Models/Entities/TreeEntityPath.cs
diff --git a/src/Umbraco.Core/Models/IDeepCloneable.cs b/src/Umbraco.Abstractions/Models/IDeepCloneable.cs
similarity index 100%
rename from src/Umbraco.Core/Models/IDeepCloneable.cs
rename to src/Umbraco.Abstractions/Models/IDeepCloneable.cs
diff --git a/src/Umbraco.Core/Umbraco.Core.csproj b/src/Umbraco.Core/Umbraco.Core.csproj
index 8ad836a912..51b87621f4 100755
--- a/src/Umbraco.Core/Umbraco.Core.csproj
+++ b/src/Umbraco.Core/Umbraco.Core.csproj
@@ -148,8 +148,6 @@
-
-
@@ -207,6 +205,9 @@
+
+
+
@@ -418,14 +419,6 @@
-
-
-
-
-
-
-
-
@@ -442,7 +435,6 @@
-
@@ -654,23 +646,12 @@
-
-
-
-
-
-
-
-
-
-
-
@@ -682,7 +663,6 @@
-
@@ -846,7 +826,6 @@
-
@@ -1477,4 +1456,4 @@
-
+
\ No newline at end of file