diff --git a/core/src/main/java/com/seibel/lod/core/Initializer.java b/core/src/main/java/com/seibel/lod/core/Initializer.java
index eec0b4abe..273a6c9f3 100644
--- a/core/src/main/java/com/seibel/lod/core/Initializer.java
+++ b/core/src/main/java/com/seibel/lod/core/Initializer.java
@@ -2,10 +2,10 @@ package com.seibel.lod.core;
import com.seibel.lod.core.api.external.methods.config.DhApiConfig;
import com.seibel.lod.core.api.external.methods.data.DhApiTerrainDataRepo;
-import com.seibel.lod.core.datatype.full.FullDataLoader;
-import com.seibel.lod.core.datatype.full.SparseFullDataLoader;
+import com.seibel.lod.core.dataObjects.fullData.FullDataLoader;
+import com.seibel.lod.core.dataObjects.fullData.SparseFullDataLoader;
import com.seibel.lod.api.DhApiMain;
-import com.seibel.lod.core.datatype.full.SingleChunkFullDataLoader;
+import com.seibel.lod.core.dataObjects.fullData.SingleChunkFullDataLoader;
import com.seibel.lod.core.render.DhApiRenderProxy;
import com.seibel.lod.core.world.DhApiWorldProxy;
diff --git a/core/src/main/java/com/seibel/lod/core/api/external/methods/data/DhApiTerrainDataRepo.java b/core/src/main/java/com/seibel/lod/core/api/external/methods/data/DhApiTerrainDataRepo.java
index 3dd817cc2..8410aa6ca 100644
--- a/core/src/main/java/com/seibel/lod/core/api/external/methods/data/DhApiTerrainDataRepo.java
+++ b/core/src/main/java/com/seibel/lod/core/api/external/methods/data/DhApiTerrainDataRepo.java
@@ -7,10 +7,10 @@ import com.seibel.lod.api.objects.data.DhApiTerrainDataPoint;
import com.seibel.lod.api.interfaces.data.IDhApiTerrainDataRepo;
import com.seibel.lod.api.objects.math.DhApiVec3i;
import com.seibel.lod.core.api.internal.SharedApi;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
import com.seibel.lod.core.util.FullDataPointUtil;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.pos.DhLodPos;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/AbstractFullDataSourceLoader.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/AbstractFullDataSourceLoader.java
similarity index 98%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/AbstractFullDataSourceLoader.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/AbstractFullDataSourceLoader.java
index ceaa804e7..c3d9b4c79 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/AbstractFullDataSourceLoader.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/AbstractFullDataSourceLoader.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
import com.google.common.collect.HashMultimap;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataDownSampler.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataDownSampler.java
similarity index 96%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/FullDataDownSampler.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataDownSampler.java
index 15949823e..546e994cc 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataDownSampler.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataDownSampler.java
@@ -1,7 +1,7 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
import com.seibel.lod.core.file.fullDatafile.IFullDataSourceProvider;
import com.seibel.lod.core.pos.DhLodPos;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataLoader.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataLoader.java
similarity index 83%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/FullDataLoader.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataLoader.java
index 6d364ba2f..fac28b3e2 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataLoader.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataLoader.java
@@ -1,6 +1,6 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataPointIdMap.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataPointIdMap.java
similarity index 98%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/FullDataPointIdMap.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataPointIdMap.java
index 72372c438..7fae98d52 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/FullDataPointIdMap.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/FullDataPointIdMap.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
import com.seibel.lod.core.wrapperInterfaces.IWrapperFactory;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/IFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IFullDataSource.java
similarity index 74%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/IFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IFullDataSource.java
index cd266c082..e3bd8e2c8 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/IFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IFullDataSource.java
@@ -1,8 +1,7 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/IIncompleteFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IIncompleteFullDataSource.java
similarity index 75%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/IIncompleteFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IIncompleteFullDataSource.java
index 0d9a60923..7c0c8625d 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/IIncompleteFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/IIncompleteFullDataSource.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
public interface IIncompleteFullDataSource extends IFullDataSource
{
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/SingleChunkFullDataLoader.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SingleChunkFullDataLoader.java
similarity index 82%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/SingleChunkFullDataLoader.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SingleChunkFullDataLoader.java
index 364951483..d4941a8c0 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/SingleChunkFullDataLoader.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SingleChunkFullDataLoader.java
@@ -1,6 +1,6 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
-import com.seibel.lod.core.datatype.full.sources.SingleChunkFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SingleChunkFullDataSource;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/SparseFullDataLoader.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SparseFullDataLoader.java
similarity index 82%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/SparseFullDataLoader.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SparseFullDataLoader.java
index 79e9d8321..4db0285a6 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/SparseFullDataLoader.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/SparseFullDataLoader.java
@@ -1,6 +1,6 @@
-package com.seibel.lod.core.datatype.full;
+package com.seibel.lod.core.dataObjects.fullData;
-import com.seibel.lod.core.datatype.full.sources.SparseFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SparseFullDataSource;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/FullArrayView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/FullArrayView.java
similarity index 96%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/accessor/FullArrayView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/FullArrayView.java
index 5020c6626..b984cacb1 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/FullArrayView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/FullArrayView.java
@@ -1,7 +1,7 @@
-package com.seibel.lod.core.datatype.full.accessor;
+package com.seibel.lod.core.dataObjects.fullData.accessor;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
import com.seibel.lod.core.util.FullDataPointUtil;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
import com.seibel.lod.core.util.LodUtil;
public class FullArrayView implements IFullDataView
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataType.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataType.java
similarity index 86%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataType.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataType.java
index 4b8c94b00..528922989 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataType.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataType.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.full.accessor;
+package com.seibel.lod.core.dataObjects.fullData.accessor;
public interface IFullDataType {
byte getDetailOffset();
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataView.java
similarity index 85%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataView.java
index cdcb134e5..64811ff8a 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/IFullDataView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/IFullDataView.java
@@ -1,6 +1,6 @@
-package com.seibel.lod.core.datatype.full.accessor;
+package com.seibel.lod.core.dataObjects.fullData.accessor;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
import com.seibel.lod.core.util.LodUtil;
import java.util.Iterator;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/SingleFullArrayView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/SingleFullArrayView.java
similarity index 96%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/accessor/SingleFullArrayView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/SingleFullArrayView.java
index 45b21de3e..e2c3d41d0 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/accessor/SingleFullArrayView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/accessor/SingleFullArrayView.java
@@ -1,7 +1,7 @@
-package com.seibel.lod.core.datatype.full.accessor;
+package com.seibel.lod.core.dataObjects.fullData.accessor;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
import com.seibel.lod.core.util.FullDataPointUtil;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
public class SingleFullArrayView implements IFullDataView
{
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/ChunkSizedFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/ChunkSizedFullDataSource.java
similarity index 79%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/sources/ChunkSizedFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/ChunkSizedFullDataSource.java
index d1cb2aad9..7f3660122 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/ChunkSizedFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/ChunkSizedFullDataSource.java
@@ -1,7 +1,7 @@
-package com.seibel.lod.core.datatype.full.sources;
+package com.seibel.lod.core.dataObjects.fullData.sources;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.FullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.accessor.FullArrayView;
import com.seibel.lod.core.pos.DhLodPos;
public class ChunkSizedFullDataSource extends FullArrayView
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/FullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/FullDataSource.java
similarity index 96%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/sources/FullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/FullDataSource.java
index 8515ce510..298ac481c 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/FullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/FullDataSource.java
@@ -1,9 +1,9 @@
-package com.seibel.lod.core.datatype.full.sources;
+package com.seibel.lod.core.dataObjects.fullData.sources;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.FullArrayView;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.accessor.FullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.pos.DhBlockPos2D;
import com.seibel.lod.core.pos.DhLodPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SampledFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SampledFullDataSource.java
similarity index 66%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/sources/SampledFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SampledFullDataSource.java
index a9ec8d112..7f0555c1a 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SampledFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SampledFullDataSource.java
@@ -1,6 +1,5 @@
-package com.seibel.lod.core.datatype.full.sources;
+package com.seibel.lod.core.dataObjects.fullData.sources;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
import com.seibel.lod.core.pos.DhSectionPos;
public class SampledFullDataSource extends FullDataSource
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SingleChunkFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SingleChunkFullDataSource.java
similarity index 96%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/sources/SingleChunkFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SingleChunkFullDataSource.java
index 46561255a..425692df2 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SingleChunkFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SingleChunkFullDataSource.java
@@ -1,10 +1,10 @@
-package com.seibel.lod.core.datatype.full.sources;
+package com.seibel.lod.core.dataObjects.fullData.sources;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.FullArrayView;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.accessor.FullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.logging.DhLoggerBuilder;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SparseFullDataSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SparseFullDataSource.java
similarity index 97%
rename from core/src/main/java/com/seibel/lod/core/datatype/full/sources/SparseFullDataSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SparseFullDataSource.java
index d254477f9..d584095f1 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/full/sources/SparseFullDataSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/fullData/sources/SparseFullDataSource.java
@@ -1,10 +1,10 @@
-package com.seibel.lod.core.datatype.full.sources;
+package com.seibel.lod.core.dataObjects.fullData.sources;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.FullDataPointIdMap;
-import com.seibel.lod.core.datatype.full.accessor.FullArrayView;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.accessor.FullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
import com.seibel.lod.core.file.fullDatafile.FullDataMetaFile;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.pos.DhLodPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderLoader.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderLoader.java
similarity index 93%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderLoader.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderLoader.java
index 9c0d54a0f..7a3f113eb 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderLoader.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderLoader.java
@@ -1,9 +1,9 @@
-package com.seibel.lod.core.datatype.render;
+package com.seibel.lod.core.dataObjects.render;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
-import com.seibel.lod.core.datatype.transform.FullToColumnTransformer;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.transformers.FullToColumnTransformer;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.level.IDhLevel;
import com.seibel.lod.core.file.renderfile.RenderMetaDataFile;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderSource.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderSource.java
similarity index 97%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderSource.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderSource.java
index 2b8ccb63a..4b64bfc90 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/ColumnRenderSource.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/ColumnRenderSource.java
@@ -1,10 +1,12 @@
-package com.seibel.lod.core.datatype.render;
+package com.seibel.lod.core.dataObjects.render;
import com.seibel.lod.core.ModInfo;
-import com.seibel.lod.core.datatype.column.accessor.*;
-import com.seibel.lod.core.datatype.render.bufferBuilding.ColumnRenderBuffer;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.transform.FullToColumnTransformer;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnQuadView;
+import com.seibel.lod.core.dataObjects.render.columnViews.IColumnDataView;
+import com.seibel.lod.core.dataObjects.render.bufferBuilding.ColumnRenderBuffer;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.transformers.FullToColumnTransformer;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.pos.DhSectionPos;
import com.seibel.lod.core.render.AbstractRenderBuffer;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferMergeDirectionEnum.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferMergeDirectionEnum.java
similarity index 93%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferMergeDirectionEnum.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferMergeDirectionEnum.java
index df661f2fa..c2898feba 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferMergeDirectionEnum.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferMergeDirectionEnum.java
@@ -17,7 +17,7 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
/**
* EastWest
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferQuad.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferQuad.java
similarity index 99%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferQuad.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferQuad.java
index f5b26dd6a..1b6c9e897 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/BufferQuad.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/BufferQuad.java
@@ -17,7 +17,7 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
import com.seibel.lod.core.enums.ELodDirection;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnBox.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnBox.java
similarity index 99%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnBox.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnBox.java
index 4f7332210..a0f4365ce 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnBox.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnBox.java
@@ -17,9 +17,9 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
-import com.seibel.lod.core.datatype.column.accessor.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
import com.seibel.lod.core.util.RenderDataPointUtil;
import com.seibel.lod.core.render.renderer.LodRenderer;
import com.seibel.lod.core.enums.ELodDirection;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnRenderBuffer.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java
similarity index 98%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnRenderBuffer.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java
index d82f18858..1c00c6f60 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/ColumnRenderBuffer.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java
@@ -1,7 +1,7 @@
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
-import com.seibel.lod.core.datatype.column.accessor.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
import com.seibel.lod.core.util.RenderDataPointUtil;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.render.renderer.LodRenderer;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/CubicLodTemplate.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/CubicLodTemplate.java
similarity index 95%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/CubicLodTemplate.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/CubicLodTemplate.java
index 17634efd6..64561e372 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/CubicLodTemplate.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/CubicLodTemplate.java
@@ -17,13 +17,13 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
import com.seibel.lod.core.util.RenderDataPointUtil;
import com.seibel.lod.api.enums.rendering.EDebugMode;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
-import com.seibel.lod.core.datatype.column.accessor.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
import com.seibel.lod.core.pos.DhLodPos;
import com.seibel.lod.core.util.BitShiftUtil;
import com.seibel.lod.core.util.ColorUtil;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/LodQuadBuilder.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java
similarity index 99%
rename from core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/LodQuadBuilder.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java
index 58c8bab48..d82142ad8 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/render/bufferBuilding/LodQuadBuilder.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/bufferBuilding/LodQuadBuilder.java
@@ -17,7 +17,7 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.render.bufferBuilding;
+package com.seibel.lod.core.dataObjects.render.bufferBuilding;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnArrayView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnArrayView.java
similarity index 98%
rename from core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnArrayView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnArrayView.java
index f7778526c..7ec30d059 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnArrayView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnArrayView.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.column.accessor;
+package com.seibel.lod.core.dataObjects.render.columnViews;
import com.seibel.lod.core.util.RenderDataPointUtil;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnQuadView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnQuadView.java
similarity index 98%
rename from core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnQuadView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnQuadView.java
index 7270b7079..1d839e796 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/ColumnQuadView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/ColumnQuadView.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.column.accessor;
+package com.seibel.lod.core.dataObjects.render.columnViews;
public class ColumnQuadView implements IColumnDataView {
private final long[] data;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/IColumnDataView.java b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/IColumnDataView.java
similarity index 90%
rename from core/src/main/java/com/seibel/lod/core/datatype/column/accessor/IColumnDataView.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/IColumnDataView.java
index ed4dc1942..41642874c 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/column/accessor/IColumnDataView.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/render/columnViews/IColumnDataView.java
@@ -1,4 +1,4 @@
-package com.seibel.lod.core.datatype.column.accessor;
+package com.seibel.lod.core.dataObjects.render.columnViews;
import java.util.Iterator;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/transform/ChunkToLodBuilder.java b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/ChunkToLodBuilder.java
similarity index 97%
rename from core/src/main/java/com/seibel/lod/core/datatype/transform/ChunkToLodBuilder.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/transformers/ChunkToLodBuilder.java
index bd92d0984..03791961a 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/transform/ChunkToLodBuilder.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/ChunkToLodBuilder.java
@@ -1,9 +1,9 @@
-package com.seibel.lod.core.datatype.transform;
+package com.seibel.lod.core.dataObjects.transformers;
import java.util.concurrent.*;
import java.util.concurrent.atomic.AtomicInteger;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.config.Config;
import com.seibel.lod.core.logging.ConfigBasedLogger;
import com.seibel.lod.core.pos.DhChunkPos;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/transform/DataRenderTransformer.java b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/DataRenderTransformer.java
similarity index 82%
rename from core/src/main/java/com/seibel/lod/core/datatype/transform/DataRenderTransformer.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/transformers/DataRenderTransformer.java
index dfb5656e0..3c0fb34f9 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/transform/DataRenderTransformer.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/DataRenderTransformer.java
@@ -1,8 +1,8 @@
-package com.seibel.lod.core.datatype.transform;
+package com.seibel.lod.core.dataObjects.transformers;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.render.ColumnRenderLoader;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderLoader;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.util.LodUtil;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/transform/FullToColumnTransformer.java b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/FullToColumnTransformer.java
similarity index 97%
rename from core/src/main/java/com/seibel/lod/core/datatype/transform/FullToColumnTransformer.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/transformers/FullToColumnTransformer.java
index cb4cf95bc..4c79e3c2d 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/transform/FullToColumnTransformer.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/FullToColumnTransformer.java
@@ -1,14 +1,14 @@
-package com.seibel.lod.core.datatype.transform;
+package com.seibel.lod.core.dataObjects.transformers;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.FullDataPointIdMap;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
import com.seibel.lod.core.util.RenderDataPointUtil;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
-import com.seibel.lod.core.datatype.column.accessor.ColumnArrayView;
-import com.seibel.lod.core.datatype.column.accessor.ColumnQuadView;
-import com.seibel.lod.core.datatype.full.*;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnQuadView;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.pos.DhSectionPos;
import com.seibel.lod.core.config.Config;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/transform/LodBuilderConfig.java b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodBuilderConfig.java
similarity index 97%
rename from core/src/main/java/com/seibel/lod/core/datatype/transform/LodBuilderConfig.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodBuilderConfig.java
index 80351a865..fd399d0d8 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/transform/LodBuilderConfig.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodBuilderConfig.java
@@ -17,7 +17,7 @@
* along with this program. If not, see .
*/
-package com.seibel.lod.core.datatype.transform;
+package com.seibel.lod.core.dataObjects.transformers;
import com.seibel.lod.api.enums.worldGeneration.EDhApiDistantGeneratorMode;
diff --git a/core/src/main/java/com/seibel/lod/core/datatype/transform/LodDataBuilder.java b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodDataBuilder.java
similarity index 95%
rename from core/src/main/java/com/seibel/lod/core/datatype/transform/LodDataBuilder.java
rename to core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodDataBuilder.java
index e79989ed2..e138e3a06 100644
--- a/core/src/main/java/com/seibel/lod/core/datatype/transform/LodDataBuilder.java
+++ b/core/src/main/java/com/seibel/lod/core/dataObjects/transformers/LodDataBuilder.java
@@ -1,6 +1,6 @@
-package com.seibel.lod.core.datatype.transform;
+package com.seibel.lod.core.dataObjects.transformers;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.util.FullDataPointUtil;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
import com.seibel.lod.core.util.LodUtil;
diff --git a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataFileHandler.java b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataFileHandler.java
index 89bc75931..abc5ba3ee 100644
--- a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataFileHandler.java
+++ b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataFileHandler.java
@@ -1,12 +1,12 @@
package com.seibel.lod.core.file.fullDatafile;
import com.google.common.collect.HashMultimap;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
-import com.seibel.lod.core.datatype.full.sources.SingleChunkFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.SparseFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SingleChunkFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SparseFullDataSource;
import com.seibel.lod.core.file.FileUtil;
import com.seibel.lod.core.file.metaData.MetaData;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataMetaFile.java b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataMetaFile.java
index 7bcd15b5f..df93a4046 100644
--- a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataMetaFile.java
+++ b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/FullDataMetaFile.java
@@ -8,9 +8,9 @@ import java.util.concurrent.atomic.AtomicReference;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.AbstractFullDataSourceLoader;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.AbstractFullDataSourceLoader;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
import com.seibel.lod.core.file.metaData.MetaData;
import com.seibel.lod.core.pos.DhLodPos;
diff --git a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/GeneratedFullDataFileHandler.java b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/GeneratedFullDataFileHandler.java
index 5ef216f2f..883861ebe 100644
--- a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/GeneratedFullDataFileHandler.java
+++ b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/GeneratedFullDataFileHandler.java
@@ -1,10 +1,10 @@
package com.seibel.lod.core.file.fullDatafile;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.IIncompleteFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.SparseFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.SingleChunkFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IIncompleteFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SparseFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.SingleChunkFullDataSource;
import com.seibel.lod.core.generation.tasks.AbstractWorldGenTaskTracker;
import com.seibel.lod.core.generation.WorldGenerationQueue;
import com.seibel.lod.core.level.IDhServerLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/IFullDataSourceProvider.java b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/IFullDataSourceProvider.java
index f2d17f59e..49b7c16ee 100644
--- a/core/src/main/java/com/seibel/lod/core/file/fullDatafile/IFullDataSourceProvider.java
+++ b/core/src/main/java/com/seibel/lod/core/file/fullDatafile/IFullDataSourceProvider.java
@@ -1,7 +1,7 @@
package com.seibel.lod.core.file.fullDatafile;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.file.metaData.MetaData;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/file/renderfile/ILodRenderSourceProvider.java b/core/src/main/java/com/seibel/lod/core/file/renderfile/ILodRenderSourceProvider.java
index 961e6b22c..60a25a1e0 100644
--- a/core/src/main/java/com/seibel/lod/core/file/renderfile/ILodRenderSourceProvider.java
+++ b/core/src/main/java/com/seibel/lod/core/file/renderfile/ILodRenderSourceProvider.java
@@ -1,7 +1,7 @@
package com.seibel.lod.core.file.renderfile;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.pos.DhSectionPos;
import java.io.File;
diff --git a/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderMetaDataFile.java b/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderMetaDataFile.java
index cc45a8dae..968299365 100644
--- a/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderMetaDataFile.java
+++ b/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderMetaDataFile.java
@@ -1,8 +1,8 @@
package com.seibel.lod.core.file.renderfile;
-import com.seibel.lod.core.datatype.render.ColumnRenderLoader;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderLoader;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.file.metaData.MetaData;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.level.IDhLevel;
diff --git a/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderSourceFileHandler.java b/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderSourceFileHandler.java
index a0cc74d44..4666b1531 100644
--- a/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderSourceFileHandler.java
+++ b/core/src/main/java/com/seibel/lod/core/file/renderfile/RenderSourceFileHandler.java
@@ -1,10 +1,10 @@
package com.seibel.lod.core.file.renderfile;
import com.google.common.collect.HashMultimap;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.transform.DataRenderTransformer;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.transformers.DataRenderTransformer;
import com.seibel.lod.core.file.fullDatafile.IFullDataSourceProvider;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.pos.DhLodPos;
diff --git a/core/src/main/java/com/seibel/lod/core/file/subDimMatching/SubDimensionLevelMatcher.java b/core/src/main/java/com/seibel/lod/core/file/subDimMatching/SubDimensionLevelMatcher.java
index 2c3a122ad..313e1e2f0 100644
--- a/core/src/main/java/com/seibel/lod/core/file/subDimMatching/SubDimensionLevelMatcher.java
+++ b/core/src/main/java/com/seibel/lod/core/file/subDimMatching/SubDimensionLevelMatcher.java
@@ -1,11 +1,11 @@
package com.seibel.lod.core.file.subDimMatching;
import com.seibel.lod.core.config.Config;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.util.FullDataPointUtil;
-import com.seibel.lod.core.datatype.full.accessor.SingleFullArrayView;
-import com.seibel.lod.core.datatype.transform.LodDataBuilder;
+import com.seibel.lod.core.dataObjects.fullData.accessor.SingleFullArrayView;
+import com.seibel.lod.core.dataObjects.transformers.LodDataBuilder;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
import com.seibel.lod.core.file.fullDatafile.FullDataFileHandler;
import com.seibel.lod.core.file.fullDatafile.IFullDataSourceProvider;
diff --git a/core/src/main/java/com/seibel/lod/core/generation/WorldGenerationQueue.java b/core/src/main/java/com/seibel/lod/core/generation/WorldGenerationQueue.java
index 24898a541..a25c52009 100644
--- a/core/src/main/java/com/seibel/lod/core/generation/WorldGenerationQueue.java
+++ b/core/src/main/java/com/seibel/lod/core/generation/WorldGenerationQueue.java
@@ -3,8 +3,8 @@ package com.seibel.lod.core.generation;
import com.seibel.lod.api.enums.worldGeneration.EDhApiDistantGeneratorMode;
import com.seibel.lod.api.interfaces.override.worldGenerator.IDhApiWorldGenerator;
import com.seibel.lod.core.config.Config;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.transform.LodDataBuilder;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.transformers.LodDataBuilder;
import com.seibel.lod.core.dependencyInjection.SingletonInjector;
import com.seibel.lod.core.generation.tasks.*;
import com.seibel.lod.core.pos.DhBlockPos2D;
diff --git a/core/src/main/java/com/seibel/lod/core/generation/tasks/AbstractWorldGenTaskTracker.java b/core/src/main/java/com/seibel/lod/core/generation/tasks/AbstractWorldGenTaskTracker.java
index b38c7eb7c..1bb864a73 100644
--- a/core/src/main/java/com/seibel/lod/core/generation/tasks/AbstractWorldGenTaskTracker.java
+++ b/core/src/main/java/com/seibel/lod/core/generation/tasks/AbstractWorldGenTaskTracker.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.generation.tasks;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import java.util.function.Consumer;
diff --git a/core/src/main/java/com/seibel/lod/core/generation/tasks/SplitTaskTracker.java b/core/src/main/java/com/seibel/lod/core/generation/tasks/SplitTaskTracker.java
index 9515ad17d..6cedacad9 100644
--- a/core/src/main/java/com/seibel/lod/core/generation/tasks/SplitTaskTracker.java
+++ b/core/src/main/java/com/seibel/lod/core/generation/tasks/SplitTaskTracker.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.generation.tasks;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
diff --git a/core/src/main/java/com/seibel/lod/core/generation/tasks/WorldGenTaskGroup.java b/core/src/main/java/com/seibel/lod/core/generation/tasks/WorldGenTaskGroup.java
index ab64a56cd..481017f42 100644
--- a/core/src/main/java/com/seibel/lod/core/generation/tasks/WorldGenTaskGroup.java
+++ b/core/src/main/java/com/seibel/lod/core/generation/tasks/WorldGenTaskGroup.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.generation.tasks;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
import com.seibel.lod.core.pos.DhLodPos;
import java.util.Iterator;
diff --git a/core/src/main/java/com/seibel/lod/core/level/DhClientServerLevel.java b/core/src/main/java/com/seibel/lod/core/level/DhClientServerLevel.java
index 5d62b0d40..6f95a3ef1 100644
--- a/core/src/main/java/com/seibel/lod/core/level/DhClientServerLevel.java
+++ b/core/src/main/java/com/seibel/lod/core/level/DhClientServerLevel.java
@@ -3,9 +3,9 @@ package com.seibel.lod.core.level;
import com.seibel.lod.api.interfaces.override.worldGenerator.IDhApiWorldGenerator;
import com.seibel.lod.core.DependencyInjection.WorldGeneratorInjector;
import com.seibel.lod.core.config.AppliedConfigState;
-import com.seibel.lod.core.datatype.full.sources.ChunkSizedFullDataSource;
-import com.seibel.lod.core.datatype.full.sources.FullDataSource;
-import com.seibel.lod.core.datatype.transform.ChunkToLodBuilder;
+import com.seibel.lod.core.dataObjects.fullData.sources.ChunkSizedFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.sources.FullDataSource;
+import com.seibel.lod.core.dataObjects.transformers.ChunkToLodBuilder;
import com.seibel.lod.core.file.fullDatafile.IFullDataSourceProvider;
import com.seibel.lod.core.file.renderfile.RenderSourceFileHandler;
import com.seibel.lod.core.generation.BatchGenerator;
diff --git a/core/src/main/java/com/seibel/lod/core/pos/DhLodPos.java b/core/src/main/java/com/seibel/lod/core/pos/DhLodPos.java
index 784c07269..e60b129ce 100644
--- a/core/src/main/java/com/seibel/lod/core/pos/DhLodPos.java
+++ b/core/src/main/java/com/seibel/lod/core/pos/DhLodPos.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.pos;
-import com.seibel.lod.core.datatype.full.IFullDataSource;
+import com.seibel.lod.core.dataObjects.fullData.IFullDataSource;
import com.seibel.lod.core.util.BitShiftUtil;
import com.seibel.lod.core.util.LodUtil;
import org.jetbrains.annotations.NotNull;
diff --git a/core/src/main/java/com/seibel/lod/core/render/LodQuadTree.java b/core/src/main/java/com/seibel/lod/core/render/LodQuadTree.java
index 01779f525..fa28273f5 100644
--- a/core/src/main/java/com/seibel/lod/core/render/LodQuadTree.java
+++ b/core/src/main/java/com/seibel/lod/core/render/LodQuadTree.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.render;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.pos.DhBlockPos2D;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/render/LodRenderSection.java b/core/src/main/java/com/seibel/lod/core/render/LodRenderSection.java
index a4fdec092..e7acb079e 100644
--- a/core/src/main/java/com/seibel/lod/core/render/LodRenderSection.java
+++ b/core/src/main/java/com/seibel/lod/core/render/LodRenderSection.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.render;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
import com.seibel.lod.core.level.IDhClientLevel;
import com.seibel.lod.core.logging.DhLoggerBuilder;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/render/RenderBufferHandler.java b/core/src/main/java/com/seibel/lod/core/render/RenderBufferHandler.java
index d48768c5f..1ce87cef6 100644
--- a/core/src/main/java/com/seibel/lod/core/render/RenderBufferHandler.java
+++ b/core/src/main/java/com/seibel/lod/core/render/RenderBufferHandler.java
@@ -1,6 +1,6 @@
package com.seibel.lod.core.render;
-import com.seibel.lod.core.datatype.render.ColumnRenderSource;
+import com.seibel.lod.core.dataObjects.render.ColumnRenderSource;
import com.seibel.lod.core.enums.ELodDirection;
import com.seibel.lod.core.pos.Pos2D;
import com.seibel.lod.core.pos.DhSectionPos;
diff --git a/core/src/main/java/com/seibel/lod/core/util/RenderDataPointUtil.java b/core/src/main/java/com/seibel/lod/core/util/RenderDataPointUtil.java
index b87ddd3d0..e5af0f125 100644
--- a/core/src/main/java/com/seibel/lod/core/util/RenderDataPointUtil.java
+++ b/core/src/main/java/com/seibel/lod/core/util/RenderDataPointUtil.java
@@ -19,8 +19,8 @@
package com.seibel.lod.core.util;
-import com.seibel.lod.core.datatype.column.accessor.ColumnArrayView;
-import com.seibel.lod.core.datatype.column.accessor.IColumnDataView;
+import com.seibel.lod.core.dataObjects.render.columnViews.ColumnArrayView;
+import com.seibel.lod.core.dataObjects.render.columnViews.IColumnDataView;
import com.seibel.lod.core.logging.SpamReducedLogger;
import java.util.Arrays;