diff --git a/ProtocolLib/.classpath b/ProtocolLib/.classpath
index 0bc481ca..34437de1 100644
--- a/ProtocolLib/.classpath
+++ b/ProtocolLib/.classpath
@@ -1,14 +1,17 @@
-
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
+
+
+
diff --git a/ProtocolLib/.gitignore b/ProtocolLib/.gitignore
new file mode 100644
index 00000000..9f970225
--- /dev/null
+++ b/ProtocolLib/.gitignore
@@ -0,0 +1 @@
+target/
\ No newline at end of file
diff --git a/ProtocolLib/.project b/ProtocolLib/.project
index dd7e4061..43010533 100644
--- a/ProtocolLib/.project
+++ b/ProtocolLib/.project
@@ -10,8 +10,14 @@
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+ org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
diff --git a/ProtocolLib/.settings/org.eclipse.jdt.core.prefs b/ProtocolLib/.settings/org.eclipse.jdt.core.prefs
index 54e493c0..6428c680 100644
--- a/ProtocolLib/.settings/org.eclipse.jdt.core.prefs
+++ b/ProtocolLib/.settings/org.eclipse.jdt.core.prefs
@@ -8,4 +8,5 @@ org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.6
diff --git a/ProtocolLib/.settings/org.eclipse.m2e.core.prefs b/ProtocolLib/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 00000000..14b697b7
--- /dev/null
+++ b/ProtocolLib/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/ProtocolLib/Java.xml b/ProtocolLib/Java.xml
deleted file mode 100644
index 33c14105..00000000
--- a/ProtocolLib/Java.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ProtocolLib/dependency-reduced-pom.xml b/ProtocolLib/dependency-reduced-pom.xml
new file mode 100644
index 00000000..ba0ecaa6
--- /dev/null
+++ b/ProtocolLib/dependency-reduced-pom.xml
@@ -0,0 +1,88 @@
+
+
+ 4.0.0
+ com.comphenix.ProtocolLib
+ ProtocolLib
+ ProtocolLib
+ 1.3.1
+ Provides read/write access to the Minecraft protocol.
+ http://dev.bukkit.org/server-mods/protocollib/
+
+
+ GNU GENERAL PUBLIC LICENSE - Version 2, June 1991
+ http://www.gnu.org/licenses/gpl-2.0.txt
+ repo
+
+
+
+ scm:git:git://github.com/aadnk/ProtocolLib.git
+ scm:git:git@github.com:aadnk/ProtocolLib.git
+ https://github.com/aadnk/ProtocolLib
+
+
+ src/main/java
+ src/test/java
+
+
+ src/main/java
+
+ **/*.java
+
+
+
+
+
+ maven-shade-plugin
+ 2.0
+
+
+ package
+
+ shade
+
+
+
+
+ org.bukkit:craftbukkit
+ junit:junit
+
+
+
+
+
+
+
+ maven-compiler-plugin
+ 2.3.2
+
+
+ 1.6
+
+
+
+
+
+
+ org.bukkit
+ craftbukkit
+ 1.3.2-R1.1-SNAPSHOT
+ compile
+
+
+ junit
+ junit
+ 4.10
+ test
+
+
+ hamcrest-core
+ org.hamcrest
+
+
+
+
+
+ UTF-8
+
+
+
diff --git a/ProtocolLib/lib/cglib-nodep-2.2.3.jar b/ProtocolLib/lib/cglib-nodep-2.2.3.jar
deleted file mode 100644
index 35d6d7c3..00000000
Binary files a/ProtocolLib/lib/cglib-nodep-2.2.3.jar and /dev/null differ
diff --git a/ProtocolLib/pom.xml b/ProtocolLib/pom.xml
new file mode 100644
index 00000000..8e2cc4fe
--- /dev/null
+++ b/ProtocolLib/pom.xml
@@ -0,0 +1,90 @@
+
+ 4.0.0
+ com.comphenix.ProtocolLib
+ ProtocolLib
+ 1.3.1
+ Provides read/write access to the Minecraft protocol.
+
+
+ UTF-8
+
+
+
+ src/main/java
+ src/test/java
+
+
+ src/main/java
+
+ **/*.java
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 2.0
+
+
+ package
+
+ shade
+
+
+
+
+ org.bukkit:craftbukkit
+ junit:junit
+
+
+
+
+
+
+
+ maven-compiler-plugin
+ 2.3.2
+
+
+ 1.6
+
+
+
+
+ http://dev.bukkit.org/server-mods/protocollib/
+ ProtocolLib
+
+
+ scm:git:git://github.com/aadnk/ProtocolLib.git
+ scm:git:git@github.com:aadnk/ProtocolLib.git
+ https://github.com/aadnk/ProtocolLib
+
+
+
+
+ GNU GENERAL PUBLIC LICENSE - Version 2, June 1991
+ http://www.gnu.org/licenses/gpl-2.0.txt
+ repo
+
+
+
+
+
+ cglib
+ cglib-nodep
+ 2.2.2
+
+
+ org.bukkit
+ craftbukkit
+ 1.3.2-R1.1-SNAPSHOT
+
+
+ junit
+ junit
+ 4.10
+ test
+
+
+
\ No newline at end of file
diff --git a/ProtocolLib/src/com/comphenix/protocol/Application.java b/ProtocolLib/src/main/java/com/comphenix/protocol/Application.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/Application.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/Application.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/AsynchronousManager.java b/ProtocolLib/src/main/java/com/comphenix/protocol/AsynchronousManager.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/AsynchronousManager.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/AsynchronousManager.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/PacketStream.java b/ProtocolLib/src/main/java/com/comphenix/protocol/PacketStream.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/PacketStream.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/PacketStream.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/Packets.java b/ProtocolLib/src/main/java/com/comphenix/protocol/Packets.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/Packets.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/Packets.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/ProtocolLibrary.java b/ProtocolLib/src/main/java/com/comphenix/protocol/ProtocolLibrary.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/ProtocolLibrary.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/ProtocolLibrary.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/ProtocolManager.java b/ProtocolLib/src/main/java/com/comphenix/protocol/ProtocolManager.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/ProtocolManager.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/ProtocolManager.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/AsyncFilterManager.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncFilterManager.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/AsyncFilterManager.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncFilterManager.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/AsyncListenerHandler.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncListenerHandler.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/AsyncListenerHandler.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncListenerHandler.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/AsyncMarker.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncMarker.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/AsyncMarker.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncMarker.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/AsyncRunnable.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncRunnable.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/AsyncRunnable.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/AsyncRunnable.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/NullPacketListener.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/NullPacketListener.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/NullPacketListener.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/NullPacketListener.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/PacketEventHolder.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketEventHolder.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/PacketEventHolder.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketEventHolder.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/PacketProcessingQueue.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketProcessingQueue.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/PacketProcessingQueue.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketProcessingQueue.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/PacketSendingQueue.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketSendingQueue.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/PacketSendingQueue.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/PacketSendingQueue.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/async/Synchronization.java b/ProtocolLib/src/main/java/com/comphenix/protocol/async/Synchronization.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/async/Synchronization.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/async/Synchronization.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/concurrency/AbstractConcurrentListenerMultimap.java b/ProtocolLib/src/main/java/com/comphenix/protocol/concurrency/AbstractConcurrentListenerMultimap.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/concurrency/AbstractConcurrentListenerMultimap.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/concurrency/AbstractConcurrentListenerMultimap.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/concurrency/SortedCopyOnWriteArray.java b/ProtocolLib/src/main/java/com/comphenix/protocol/concurrency/SortedCopyOnWriteArray.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/concurrency/SortedCopyOnWriteArray.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/concurrency/SortedCopyOnWriteArray.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/ConnectionSide.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/ConnectionSide.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/ConnectionSide.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/ConnectionSide.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/ListenerPriority.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/ListenerPriority.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/ListenerPriority.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/ListenerPriority.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/ListeningWhitelist.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/ListeningWhitelist.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/ListeningWhitelist.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/ListeningWhitelist.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/PacketAdapter.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketAdapter.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/PacketAdapter.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketAdapter.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/PacketContainer.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketContainer.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/PacketContainer.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketContainer.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/PacketEvent.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketEvent.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/PacketEvent.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketEvent.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/PacketListener.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketListener.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/PacketListener.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/PacketListener.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/events/SerializedOfflinePlayer.java b/ProtocolLib/src/main/java/com/comphenix/protocol/events/SerializedOfflinePlayer.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/events/SerializedOfflinePlayer.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/events/SerializedOfflinePlayer.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/BukkitUnwrapper.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/BukkitUnwrapper.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/BukkitUnwrapper.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/BukkitUnwrapper.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/EntityUtilities.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/EntityUtilities.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/EntityUtilities.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/EntityUtilities.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/ListenerInvoker.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/ListenerInvoker.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/ListenerInvoker.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/ListenerInvoker.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/MinecraftRegistry.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/MinecraftRegistry.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/MinecraftRegistry.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/MinecraftRegistry.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/PacketConstructor.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketConstructor.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/PacketConstructor.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketConstructor.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/PacketFilterManager.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketFilterManager.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/PacketFilterManager.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketFilterManager.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/PacketInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketInjector.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/PacketInjector.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/PacketInjector.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/PlayerLoggedOutException.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/PlayerLoggedOutException.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/PlayerLoggedOutException.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/PlayerLoggedOutException.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/PrioritizedListener.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/PrioritizedListener.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/PrioritizedListener.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/PrioritizedListener.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/ReadPacketModifier.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/ReadPacketModifier.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/ReadPacketModifier.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/ReadPacketModifier.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/SortedPacketListenerList.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/SortedPacketListenerList.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/SortedPacketListenerList.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/SortedPacketListenerList.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/StructureCache.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/StructureCache.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/StructureCache.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/StructureCache.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/InjectedArrayList.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/InjectedArrayList.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/InjectedArrayList.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/InjectedArrayList.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/InjectedServerConnection.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/InjectedServerConnection.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/InjectedServerConnection.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/InjectedServerConnection.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkFieldInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkFieldInjector.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkFieldInjector.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkFieldInjector.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkObjectInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkObjectInjector.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkObjectInjector.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkObjectInjector.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkServerInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkServerInjector.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/NetworkServerInjector.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/NetworkServerInjector.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/PlayerInjectionHandler.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/PlayerInjectionHandler.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/PlayerInjectionHandler.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/PlayerInjectionHandler.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/PlayerInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/PlayerInjector.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/PlayerInjector.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/PlayerInjector.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/injector/player/ReplacedArrayList.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/ReplacedArrayList.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/injector/player/ReplacedArrayList.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/injector/player/ReplacedArrayList.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/metrics/Metrics.java b/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/metrics/Metrics.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Metrics.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/metrics/Statistics.java b/ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Statistics.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/metrics/Statistics.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/metrics/Statistics.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/EquivalentConverter.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/EquivalentConverter.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/EquivalentConverter.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/EquivalentConverter.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/FieldAccessException.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FieldAccessException.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/FieldAccessException.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FieldAccessException.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/FieldUtils.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FieldUtils.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/FieldUtils.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FieldUtils.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/FuzzyReflection.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FuzzyReflection.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/FuzzyReflection.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/FuzzyReflection.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/IntEnum.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/IntEnum.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/IntEnum.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/IntEnum.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/MethodUtils.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/MethodUtils.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/MethodUtils.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/MethodUtils.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/ObjectCloner.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/ObjectCloner.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/ObjectCloner.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/ObjectCloner.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/PrimitiveUtils.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/PrimitiveUtils.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/PrimitiveUtils.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/PrimitiveUtils.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/StructureModifier.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/StructureModifier.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/StructureModifier.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/StructureModifier.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/VolatileField.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/VolatileField.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/VolatileField.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/VolatileField.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/BackgroundCompiler.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/BackgroundCompiler.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/BackgroundCompiler.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/BackgroundCompiler.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/BoxingHelper.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/BoxingHelper.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/BoxingHelper.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/BoxingHelper.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/CompileListener.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/CompileListener.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/CompileListener.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/CompileListener.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/CompiledStructureModifier.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/MethodDescriptor.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/MethodDescriptor.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/MethodDescriptor.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/MethodDescriptor.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/compiler/StructureCompiler.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/StructureCompiler.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/compiler/StructureCompiler.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/compiler/StructureCompiler.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/instances/CollectionGenerator.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/CollectionGenerator.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/instances/CollectionGenerator.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/CollectionGenerator.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/instances/DefaultInstances.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/DefaultInstances.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/instances/DefaultInstances.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/DefaultInstances.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/instances/ExistingGenerator.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/ExistingGenerator.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/instances/ExistingGenerator.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/ExistingGenerator.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/instances/InstanceProvider.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/InstanceProvider.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/instances/InstanceProvider.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/InstanceProvider.java
diff --git a/ProtocolLib/src/com/comphenix/protocol/reflect/instances/PrimitiveGenerator.java b/ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/PrimitiveGenerator.java
similarity index 100%
rename from ProtocolLib/src/com/comphenix/protocol/reflect/instances/PrimitiveGenerator.java
rename to ProtocolLib/src/main/java/com/comphenix/protocol/reflect/instances/PrimitiveGenerator.java
diff --git a/ProtocolLib/src/plugin.yml b/ProtocolLib/src/main/java/plugin.yml
similarity index 86%
rename from ProtocolLib/src/plugin.yml
rename to ProtocolLib/src/main/java/plugin.yml
index 3901dcf0..4386cbc8 100644
--- a/ProtocolLib/src/plugin.yml
+++ b/ProtocolLib/src/main/java/plugin.yml
@@ -1,5 +1,5 @@
name: ProtocolLib
-version: 1.3.0
+version: 1.3.1
description: Provides read/write access to the Minecraft protocol.
author: Comphenix
website: http://www.comphenix.net/ProtocolLib
diff --git a/ProtocolLib/test/com/comphenix/protocol/injector/SortedCopyOnWriteArrayTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/injector/SortedCopyOnWriteArrayTest.java
similarity index 100%
rename from ProtocolLib/test/com/comphenix/protocol/injector/SortedCopyOnWriteArrayTest.java
rename to ProtocolLib/src/test/java/com/comphenix/protocol/injector/SortedCopyOnWriteArrayTest.java
diff --git a/ProtocolLib/test/com/comphenix/protocol/reflect/StructureModifierTest.java b/ProtocolLib/src/test/java/com/comphenix/protocol/reflect/StructureModifierTest.java
similarity index 100%
rename from ProtocolLib/test/com/comphenix/protocol/reflect/StructureModifierTest.java
rename to ProtocolLib/src/test/java/com/comphenix/protocol/reflect/StructureModifierTest.java