diff --git a/src/main/java/baritone/bot/BaritoneUser.java b/src/main/java/baritone/bot/BaritoneUser.java
index 7ae2b3e0b..de1aa090b 100644
--- a/src/main/java/baritone/bot/BaritoneUser.java
+++ b/src/main/java/baritone/bot/BaritoneUser.java
@@ -23,9 +23,9 @@ import baritone.api.bot.IBaritoneUser;
import baritone.api.event.events.WorldEvent;
import baritone.api.event.events.type.EventState;
import baritone.api.utils.IPlayerController;
-import baritone.bot.spec.BotMinecraft;
-import baritone.bot.spec.BotWorld;
-import baritone.bot.spec.BotEntity;
+import baritone.bot.impl.BotMinecraft;
+import baritone.bot.impl.BotWorld;
+import baritone.bot.impl.BotEntity;
import baritone.utils.player.WrappedPlayerController;
import com.mojang.authlib.GameProfile;
import net.minecraft.client.multiplayer.PlayerControllerMP;
diff --git a/src/main/java/baritone/bot/BotWorldProvider.java b/src/main/java/baritone/bot/BotWorldProvider.java
index 9491d965b..67464b839 100644
--- a/src/main/java/baritone/bot/BotWorldProvider.java
+++ b/src/main/java/baritone/bot/BotWorldProvider.java
@@ -17,7 +17,7 @@
package baritone.bot;
-import baritone.bot.spec.BotWorld;
+import baritone.bot.impl.BotWorld;
import it.unimi.dsi.fastutil.ints.Int2ObjectArrayMap;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import net.minecraft.world.GameType;
diff --git a/src/main/java/baritone/bot/UserManager.java b/src/main/java/baritone/bot/UserManager.java
index ed0a5e019..3da7772ae 100644
--- a/src/main/java/baritone/bot/UserManager.java
+++ b/src/main/java/baritone/bot/UserManager.java
@@ -27,8 +27,8 @@ import baritone.api.event.listener.AbstractGameEventListener;
import baritone.api.utils.Helper;
import baritone.bot.connect.ConnectionResult;
import baritone.bot.handler.BotNetHandlerLoginClient;
-import baritone.bot.spec.BotEntity;
-import baritone.bot.spec.BotWorld;
+import baritone.bot.impl.BotEntity;
+import baritone.bot.impl.BotWorld;
import baritone.utils.accessor.IIntegratedServer;
import baritone.utils.accessor.IThreadLanServerPing;
import net.minecraft.client.multiplayer.ServerAddress;
diff --git a/src/main/java/baritone/bot/handler/BotNetHandlerLoginClient.java b/src/main/java/baritone/bot/handler/BotNetHandlerLoginClient.java
index aceba3e2d..46f88d64e 100644
--- a/src/main/java/baritone/bot/handler/BotNetHandlerLoginClient.java
+++ b/src/main/java/baritone/bot/handler/BotNetHandlerLoginClient.java
@@ -18,7 +18,7 @@
package baritone.bot.handler;
import baritone.bot.BaritoneUser;
-import baritone.bot.spec.BotMinecraft;
+import baritone.bot.impl.BotMinecraft;
import net.minecraft.client.Minecraft;
import net.minecraft.client.network.NetHandlerLoginClient;
import net.minecraft.network.EnumConnectionState;
diff --git a/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java b/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java
index 32f4fd299..93a8e7d45 100644
--- a/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java
+++ b/src/main/java/baritone/bot/handler/BotNetHandlerPlayClient.java
@@ -19,10 +19,10 @@ package baritone.bot.handler;
import baritone.api.utils.Helper;
import baritone.bot.BaritoneUser;
-import baritone.bot.spec.BotEntity;
-import baritone.bot.spec.BotMinecraft;
-import baritone.bot.spec.BotPlayerController;
-import baritone.bot.spec.BotWorld;
+import baritone.bot.impl.BotEntity;
+import baritone.bot.impl.BotMinecraft;
+import baritone.bot.impl.BotPlayerController;
+import baritone.bot.impl.BotWorld;
import baritone.utils.accessor.INetHandlerPlayClient;
import com.mojang.authlib.GameProfile;
import io.netty.buffer.Unpooled;
diff --git a/src/main/java/baritone/bot/spec/BotEntity.java b/src/main/java/baritone/bot/impl/BotEntity.java
similarity index 99%
rename from src/main/java/baritone/bot/spec/BotEntity.java
rename to src/main/java/baritone/bot/impl/BotEntity.java
index d81b0aff8..c2b0b3e96 100644
--- a/src/main/java/baritone/bot/spec/BotEntity.java
+++ b/src/main/java/baritone/bot/impl/BotEntity.java
@@ -15,7 +15,7 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import baritone.Baritone;
import baritone.api.bot.IBaritoneUser;
diff --git a/src/main/java/baritone/bot/spec/BotMinecraft.java b/src/main/java/baritone/bot/impl/BotMinecraft.java
similarity index 99%
rename from src/main/java/baritone/bot/spec/BotMinecraft.java
rename to src/main/java/baritone/bot/impl/BotMinecraft.java
index 79a0707f1..7f7b8557b 100644
--- a/src/main/java/baritone/bot/spec/BotMinecraft.java
+++ b/src/main/java/baritone/bot/impl/BotMinecraft.java
@@ -15,7 +15,7 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import baritone.api.bot.IBaritoneUser;
import baritone.api.utils.Helper;
diff --git a/src/main/java/baritone/bot/spec/BotParticleManager.java b/src/main/java/baritone/bot/impl/BotParticleManager.java
similarity index 98%
rename from src/main/java/baritone/bot/spec/BotParticleManager.java
rename to src/main/java/baritone/bot/impl/BotParticleManager.java
index c7bf9ef56..62ea5e6c8 100644
--- a/src/main/java/baritone/bot/spec/BotParticleManager.java
+++ b/src/main/java/baritone/bot/impl/BotParticleManager.java
@@ -15,7 +15,7 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import net.minecraft.client.particle.ParticleManager;
import net.minecraft.entity.Entity;
diff --git a/src/main/java/baritone/bot/spec/BotPlayerController.java b/src/main/java/baritone/bot/impl/BotPlayerController.java
similarity index 97%
rename from src/main/java/baritone/bot/spec/BotPlayerController.java
rename to src/main/java/baritone/bot/impl/BotPlayerController.java
index c24e8b7ae..2b37b1521 100644
--- a/src/main/java/baritone/bot/spec/BotPlayerController.java
+++ b/src/main/java/baritone/bot/impl/BotPlayerController.java
@@ -15,7 +15,7 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import baritone.bot.BaritoneUser;
import net.minecraft.client.multiplayer.PlayerControllerMP;
diff --git a/src/main/java/baritone/bot/spec/BotSoundHandler.java b/src/main/java/baritone/bot/impl/BotSoundHandler.java
similarity index 89%
rename from src/main/java/baritone/bot/spec/BotSoundHandler.java
rename to src/main/java/baritone/bot/impl/BotSoundHandler.java
index f21184302..a68927c5e 100644
--- a/src/main/java/baritone/bot/spec/BotSoundHandler.java
+++ b/src/main/java/baritone/bot/impl/BotSoundHandler.java
@@ -15,12 +15,10 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import net.minecraft.client.audio.ISound;
import net.minecraft.client.audio.SoundHandler;
-import net.minecraft.client.resources.IResourceManager;
-import net.minecraft.client.settings.GameSettings;
import javax.annotation.Nonnull;
diff --git a/src/main/java/baritone/bot/spec/BotWorld.java b/src/main/java/baritone/bot/impl/BotWorld.java
similarity index 99%
rename from src/main/java/baritone/bot/spec/BotWorld.java
rename to src/main/java/baritone/bot/impl/BotWorld.java
index a0459ade1..0af039bf9 100644
--- a/src/main/java/baritone/bot/spec/BotWorld.java
+++ b/src/main/java/baritone/bot/impl/BotWorld.java
@@ -15,7 +15,7 @@
* along with Baritone. If not, see .
*/
-package baritone.bot.spec;
+package baritone.bot.impl;
import it.unimi.dsi.fastutil.ints.*;
import net.minecraft.client.multiplayer.WorldClient;