diff --git a/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java b/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
index 9060a51..24aee76 100644
--- a/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
+++ b/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
@@ -15,13 +15,13 @@
 import net.onrc.onos.core.intent.runtime.IntentStateList;
 import net.onrc.onos.core.intent.runtime.PathCalcRuntimeModule;
 import net.onrc.onos.core.intent.runtime.PersistIntent;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.DeviceEvent;
 import net.onrc.onos.core.topology.INetworkGraphListener;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.LinkEvent;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
index b8afdf2..fe2a863 100755
--- a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
+++ b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
@@ -25,6 +25,7 @@
 import net.onrc.onos.core.intent.runtime.PathCalcRuntimeModule;
 import net.onrc.onos.core.intent.runtime.PersistIntent;
 import net.onrc.onos.core.intent.runtime.PlanCalcRuntime;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.DeviceEvent;
 import net.onrc.onos.core.topology.INetworkGraphListener;
 import net.onrc.onos.core.topology.INetworkGraphService;
@@ -32,7 +33,6 @@
 import net.onrc.onos.core.topology.NetworkGraph;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/packet/BSNTest.java b/src/test/java/net/onrc/onos/core/packet/BSNTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/BSNTest.java
rename to src/test/java/net/onrc/onos/core/packet/BSNTest.java
index a72caef..aff3285 100644
--- a/src/test/java/net/onrc/onos/packet/BSNTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/BSNTest.java
@@ -18,16 +18,16 @@
 /**
  *
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.BSN;
-import net.onrc.onos.packet.BSNPROBE;
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.BSN;
+import net.onrc.onos.core.packet.BSNPROBE;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/DHCPTest.java b/src/test/java/net/onrc/onos/core/packet/DHCPTest.java
similarity index 99%
rename from src/test/java/net/onrc/onos/packet/DHCPTest.java
rename to src/test/java/net/onrc/onos/core/packet/DHCPTest.java
index cc15bd1..66855d1 100644
--- a/src/test/java/net/onrc/onos/packet/DHCPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/DHCPTest.java
@@ -18,18 +18,18 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 
 
 import java.util.Arrays;
 import java.util.ListIterator;
 
-import net.onrc.onos.packet.DHCP;
-import net.onrc.onos.packet.DHCPOption;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.DHCP;
+import net.onrc.onos.core.packet.DHCPOption;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 import junit.framework.TestCase;
 
 
diff --git a/src/test/java/net/onrc/onos/packet/EthernetTest.java b/src/test/java/net/onrc/onos/core/packet/EthernetTest.java
similarity index 96%
rename from src/test/java/net/onrc/onos/packet/EthernetTest.java
rename to src/test/java/net/onrc/onos/core/packet/EthernetTest.java
index b22c779..6293a43 100644
--- a/src/test/java/net/onrc/onos/packet/EthernetTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/EthernetTest.java
@@ -18,14 +18,14 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/ICMPTest.java b/src/test/java/net/onrc/onos/core/packet/ICMPTest.java
similarity index 92%
rename from src/test/java/net/onrc/onos/packet/ICMPTest.java
rename to src/test/java/net/onrc/onos/core/packet/ICMPTest.java
index 73e9cff..e09ae24 100644
--- a/src/test/java/net/onrc/onos/packet/ICMPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/ICMPTest.java
@@ -18,16 +18,16 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.ICMP;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.ICMP;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/IPv4Test.java b/src/test/java/net/onrc/onos/core/packet/IPv4Test.java
similarity index 97%
rename from src/test/java/net/onrc/onos/packet/IPv4Test.java
rename to src/test/java/net/onrc/onos/core/packet/IPv4Test.java
index b81be6f..3c47ffb 100644
--- a/src/test/java/net/onrc/onos/packet/IPv4Test.java
+++ b/src/test/java/net/onrc/onos/core/packet/IPv4Test.java
@@ -18,14 +18,14 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.IPv4;
 
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java b/src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
similarity index 97%
rename from src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java
rename to src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
index 1a8367c..a887038 100644
--- a/src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
@@ -12,9 +12,9 @@
  *    under the License.
  **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
-import net.onrc.onos.packet.LLDPOrganizationalTLV;
+import net.onrc.onos.core.packet.LLDPOrganizationalTLV;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/LLDPTest.java b/src/test/java/net/onrc/onos/core/packet/LLDPTest.java
similarity index 92%
rename from src/test/java/net/onrc/onos/packet/LLDPTest.java
rename to src/test/java/net/onrc/onos/core/packet/LLDPTest.java
index c093efb..6ef83e2 100755
--- a/src/test/java/net/onrc/onos/packet/LLDPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/LLDPTest.java
@@ -18,17 +18,17 @@
 /**
  *
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.LLDP;
-import net.onrc.onos.packet.LLDPTLV;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.LLDP;
+import net.onrc.onos.core.packet.LLDPTLV;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/PacketTest.java b/src/test/java/net/onrc/onos/core/packet/PacketTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/PacketTest.java
rename to src/test/java/net/onrc/onos/core/packet/PacketTest.java
index f30c12b..6ca9307 100644
--- a/src/test/java/net/onrc/onos/packet/PacketTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/PacketTest.java
@@ -1,12 +1,12 @@
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.*;
-import net.onrc.onos.packet.ARP;
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.ARP;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/src/test/java/net/onrc/onos/packet/TCPTest.java b/src/test/java/net/onrc/onos/core/packet/TCPTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/TCPTest.java
rename to src/test/java/net/onrc/onos/core/packet/TCPTest.java
index 03ef8b6..4817a99 100644
--- a/src/test/java/net/onrc/onos/packet/TCPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/TCPTest.java
@@ -18,15 +18,15 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.TCP;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.TCP;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/UDPTest.java b/src/test/java/net/onrc/onos/core/packet/UDPTest.java
similarity index 90%
rename from src/test/java/net/onrc/onos/packet/UDPTest.java
rename to src/test/java/net/onrc/onos/core/packet/UDPTest.java
index c9081e8..b5eca46 100644
--- a/src/test/java/net/onrc/onos/packet/UDPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/UDPTest.java
@@ -18,16 +18,16 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java b/src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
similarity index 97%
rename from src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java
rename to src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
index 7c4a1a0..5b1f59d 100644
--- a/src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java
+++ b/src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import static org.junit.Assert.*;
 
@@ -11,7 +11,11 @@
 import java.util.concurrent.TimeUnit;
 
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
-import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
+import net.onrc.onos.core.registry.ControllerRegistryEntry;
+import net.onrc.onos.core.registry.IdBlock;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.StandaloneRegistry;
+import net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java b/src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
similarity index 96%
rename from src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java
rename to src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
index 774a9d4..06de77e 100644
--- a/src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java
+++ b/src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -7,8 +7,13 @@
 
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.test.FloodlightTestCase;
-import net.onrc.onos.registry.controller.StandaloneRegistryTest.LoggingCallback;
-import net.onrc.onos.registry.controller.ZookeeperRegistry.SwitchLeaderListener;
+import net.onrc.onos.core.registry.ControllerRegistryEntry;
+import net.onrc.onos.core.registry.ControllerService;
+import net.onrc.onos.core.registry.IdBlock;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.ZookeeperRegistry;
+import net.onrc.onos.core.registry.StandaloneRegistryTest.LoggingCallback;
+import net.onrc.onos.core.registry.ZookeeperRegistry.SwitchLeaderListener;
 
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
@@ -154,8 +159,8 @@
 	}
 
 	/**
-	 * Test if {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback)}
-	 * correctly take control of specific switch. Because {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback)}
+	 * Test if {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback)}
+	 * correctly take control of specific switch. Because {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback)}
 	 * doesn't return values, inject mock {@link LeaderLatch} object and verify latch is correctly set up.
 	 * @throws Exception
 	 */
