diff --git a/gogo/aQute.osgi.launcher.bnd b/gogo/aQute.osgi.launcher.bnd
index c211783..1034392 100644
--- a/gogo/aQute.osgi.launcher.bnd
+++ b/gogo/aQute.osgi.launcher.bnd
@@ -1,4 +1,4 @@
-Private-Package: aQute.osgi.launcher, aQute.shell.runtime, aQute.shell.osgi, aQute.threadio, \
- org.osgi.service.shell, org.osgi.service.threadio, aQute.shell.console, org.osgi.framework 
-Main-Class: aQute.osgi.launcher.Launcher
+Private-Package: org.apache.felix.gogo.launcher, org.apache.felix.gogo.shell.runtime, org.apache.felix.gogo.shell.osgi, org.apache.felix.gogo.threadio, \
+ org.osgi.service.shell, org.osgi.service.threadio, org.apache.felix.gogo.shell.console, org.osgi.framework
+Main-Class: org.apache.felix.gogo.launcher.Launcher
 
diff --git a/gogo/aQute.shell.equinox.bnd b/gogo/aQute.shell.equinox.bnd
index 3053ee4..333c98a 100644
--- a/gogo/aQute.shell.equinox.bnd
+++ b/gogo/aQute.shell.equinox.bnd
@@ -1,6 +1,6 @@
 -include: ~default.bnd
-Service-Component: aQute.shell.equinox.Equinox; \
+Service-Component: org.apache.felix.gogo.shell.equinox.Equinox; \
    pka=org.osgi.service.packageadmin.PackageAdmin?; \
    lrs=org.osgi.service.log.LogReaderService?; \
    sls=org.osgi.service.startlevel.StartLevel?
-Private-Package: aQute.shell.equinox
+Private-Package: org.apache.felix.gogo.shell.equinox
diff --git a/gogo/aQute.shell.runtime.bnd b/gogo/aQute.shell.runtime.bnd
index 24613f2..097d57d 100644
--- a/gogo/aQute.shell.runtime.bnd
+++ b/gogo/aQute.shell.runtime.bnd
@@ -1,9 +1,9 @@
 -include: ~default.bnd
 Bundle-Name: Command Shell Service
 Bundle-Description: Provides a shell service
-Private-Package: aQute.shell.osgi, aQute.shell.runtime
+Private-Package: org.apache.felix.gogo.shell.osgi, org.apache.felix.gogo.shell.runtime
 Export-Package: org.osgi.service.command
-Service-Component: aQute.shell.osgi.OSGiShell; \
+Service-Component: org.apache.felix.gogo.shell.osgi.OSGiShell; \
   provide:=org.osgi.service.command.CommandProcessor; \
   threadio=org.osgi.service.threadio.ThreadIO; \
   converter=org.osgi.service.command.Converter*
diff --git a/gogo/aQute.shell.stdio.bnd b/gogo/aQute.shell.stdio.bnd
index 0f9faa6..56b1285 100644
--- a/gogo/aQute.shell.stdio.bnd
+++ b/gogo/aQute.shell.stdio.bnd
@@ -1,4 +1,4 @@
 -include: ~default.bnd
-Service-Component: aQute.shell.stdio.StdioConsole; \
+Service-Component: org.apache.felix.gogo.shell.stdio.StdioConsole; \
    processor=org.osgi.service.command.CommandProcessor
-Private-Package: aQute.shell.stdio,aQute.shell.console
+Private-Package: org.apache.felix.gogo.shell.stdio,org.apache.felix.gogo.shell.console
diff --git a/gogo/aQute.shell.support.bnd b/gogo/aQute.shell.support.bnd
index 34c11c2..f7917a0 100644
--- a/gogo/aQute.shell.support.bnd
+++ b/gogo/aQute.shell.support.bnd
@@ -1,6 +1,6 @@
 -include: ~default.bnd
 Bundle-Name: aQute Shell Support
 Bundle-Description: Commands for the shell that turn it into a programming language
-Private-Package: aQute.shell.lang
-Service-Component: aQute.shell.lang.Support; \
+Private-Package: org.apache.felix.gogo.shell.lang
+Service-Component: org.apache.felix.gogo.shell.lang.Support; \
   provide:=org.osgi.service.command.Converter
\ No newline at end of file
diff --git a/gogo/aQute.shell.telnet.bnd b/gogo/aQute.shell.telnet.bnd
index 9632317..1f42a80 100644
--- a/gogo/aQute.shell.telnet.bnd
+++ b/gogo/aQute.shell.telnet.bnd
@@ -1,7 +1,7 @@
 -include: ~default.bnd
 
 Bundle-Name: Telnet Shell Service
-Bundle-Description: Listens to port 2019 (unless overridden with configuration "port" for pid=aQute.shell.telnet.TelnetShell)
-Private-Package: aQute.shell.telnet, aQute.shell.console
-Service-Component: aQute.shell.telnet.TelnetShell; \
+Bundle-Description: Listens to port 2019 (unless overridden with configuration "port" for pid=org.apache.felix.gogo.shell.telnet.TelnetShell)
+Private-Package: org.apache.felix.gogo.shell.telnet, org.apache.felix.gogo.shell.console
+Service-Component: org.apache.felix.gogo.shell.telnet.TelnetShell; \
   processor=org.osgi.service.command.CommandProcessor
diff --git a/gogo/aQute.threadio.bnd b/gogo/aQute.threadio.bnd
index f2808fc..cd614f8 100644
--- a/gogo/aQute.threadio.bnd
+++ b/gogo/aQute.threadio.bnd
@@ -2,7 +2,7 @@
 
 Bundle-Name: Thread IO
 Bundle-Description: Multiplexes input/output/error streams based on the thread.
-Private-Package: aQute.threadio 
+Private-Package: org.apache.felix.gogo.threadio
 Export-Package: org.osgi.service.threadio
-Service-Component: aQute.threadio.ThreadIOImpl;\
+Service-Component: org.apache.felix.gogo.threadio.ThreadIOImpl;\
   provide:=org.osgi.service.threadio.ThreadIO
diff --git a/gogo/pom.xml b/gogo/pom.xml
index 45d8e8a..3be40c8 100644
--- a/gogo/pom.xml
+++ b/gogo/pom.xml
@@ -58,7 +58,7 @@
         <configuration>
           <instructions>
             <Export-Package>org.osgi.service.command; version=1.0.0</Export-Package>
-            <Private-Package>aQute.*</Private-Package>
+            <Private-Package>org.apache.felix.gogo.*</Private-Package>
             <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
             <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
           </instructions>
diff --git a/gogo/proc.bnd b/gogo/proc.bnd
index 84dc020..6a7609f 100644
--- a/gogo/proc.bnd
+++ b/gogo/proc.bnd
@@ -1,5 +1,5 @@
 -output: work
-Private-Package: aQute.cpeg
-Service-Component: aQute.cpeg.Procedural; \
-  provide:=aQute.cpeg.Procedural; \
+Private-Package: org.apache.felix.gogo.cpeg
+Service-Component: org.apache.felix.gogo.cpeg.Procedural; \
+  provide:=org.apache.felix.gogo.cpeg.Procedural; \
   properties:="osgi.command.scope=proc,osgi.command.function=new"
diff --git a/gogo/src/main/java/aQute/cpeg/Procedural.java b/gogo/src/main/java/org/apache/felix/gogo/cpeg/Procedural.java
similarity index 97%
rename from gogo/src/main/java/aQute/cpeg/Procedural.java
rename to gogo/src/main/java/org/apache/felix/gogo/cpeg/Procedural.java
index 1fa1d32..4d84d94 100644
--- a/gogo/src/main/java/aQute/cpeg/Procedural.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/cpeg/Procedural.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.cpeg;
+package org.apache.felix.gogo.cpeg;
 
 
 import org.osgi.framework.*;
diff --git a/gogo/src/main/java/aQute/osgi/launcher/Launcher.java b/gogo/src/main/java/org/apache/felix/gogo/launcher/Launcher.java
similarity index 95%
rename from gogo/src/main/java/aQute/osgi/launcher/Launcher.java
rename to gogo/src/main/java/org/apache/felix/gogo/launcher/Launcher.java
index 33306ff..78f2881 100644
--- a/gogo/src/main/java/aQute/osgi/launcher/Launcher.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/launcher/Launcher.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.osgi.launcher;
+package org.apache.felix.gogo.launcher;
 
 import java.io.*;
 import java.lang.reflect.*;
@@ -26,9 +26,9 @@
 import org.osgi.framework.*;
 import org.osgi.service.command.*;
 
-import aQute.shell.console.*;
-import aQute.shell.osgi.*;
-import aQute.threadio.*;
+import org.apache.felix.gogo.shell.console.*;
+import org.apache.felix.gogo.shell.osgi.*;
+import org.apache.felix.gogo.threadio.*;
 
 public class Launcher {
 	static List<URL> classpath = new ArrayList<URL>();
diff --git a/gogo/src/main/java/aQute/shell/console/Console.java b/gogo/src/main/java/org/apache/felix/gogo/shell/console/Console.java
similarity index 98%
rename from gogo/src/main/java/aQute/shell/console/Console.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/console/Console.java
index 1c85493..21770d8 100644
--- a/gogo/src/main/java/aQute/shell/console/Console.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/console/Console.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package aQute.shell.console;
+package org.apache.felix.gogo.shell.console;
 
 import java.io.*;
 import java.lang.reflect.*;
diff --git a/gogo/src/main/java/aQute/shell/equinox/Equinox.java b/gogo/src/main/java/org/apache/felix/gogo/shell/equinox/Equinox.java
similarity index 99%
rename from gogo/src/main/java/aQute/shell/equinox/Equinox.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/equinox/Equinox.java
index d2c34f1..f526cf1 100644
--- a/gogo/src/main/java/aQute/shell/equinox/Equinox.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/equinox/Equinox.java
@@ -1,4 +1,4 @@
-package aQute.shell.equinox;
+package org.apache.felix.gogo.shell.equinox;
 
 import java.io.*;
 import java.net.*;
diff --git a/gogo/src/main/java/aQute/shell/lang/Support.java b/gogo/src/main/java/org/apache/felix/gogo/shell/lang/Support.java
similarity index 97%
rename from gogo/src/main/java/aQute/shell/lang/Support.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/lang/Support.java
index bdf27de..9618ff0 100644
--- a/gogo/src/main/java/aQute/shell/lang/Support.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/lang/Support.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.lang;
+package org.apache.felix.gogo.shell.lang;
 
 import java.lang.reflect.*;
 import java.util.*;
diff --git a/gogo/src/main/java/aQute/shell/osgi/OSGiCommands.java b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiCommands.java
similarity index 99%
rename from gogo/src/main/java/aQute/shell/osgi/OSGiCommands.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiCommands.java
index 7f3e9a3..121a33a 100644
--- a/gogo/src/main/java/aQute/shell/osgi/OSGiCommands.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiCommands.java
@@ -18,7 +18,7 @@
  */
 // DWB1: osgi:each too verbose (formats reults to System.out)
 // DWB2: ClassNotFoundException should be caught in convert() method
-package aQute.shell.osgi;
+package org.apache.felix.gogo.shell.osgi;
 
 import java.io.*;
 import java.util.*;
diff --git a/gogo/src/main/java/aQute/shell/osgi/OSGiShell.java b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiShell.java
similarity index 97%
rename from gogo/src/main/java/aQute/shell/osgi/OSGiShell.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiShell.java
index 20e5ef1..d2710ac 100644
--- a/gogo/src/main/java/aQute/shell/osgi/OSGiShell.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/OSGiShell.java
@@ -18,7 +18,7 @@
  */
 // DWB3: dynamically load optional framework components to reduce dependencies
 // DWB4: get() with trailing colon causes org.osgi.framework.InvalidSyntaxException
-package aQute.shell.osgi;
+package org.apache.felix.gogo.shell.osgi;
 
 import org.osgi.framework.*;
 import org.osgi.service.command.*;
@@ -26,7 +26,7 @@
 import org.osgi.service.packageadmin.*;
 import org.osgi.service.threadio.*;
 
-import aQute.shell.runtime.*;
+import org.apache.felix.gogo.shell.runtime.*;
 
 public class OSGiShell extends CommandShellImpl {
     Bundle       bundle;
diff --git a/gogo/src/main/java/aQute/shell/osgi/ServiceCommand.java b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/ServiceCommand.java
similarity index 94%
rename from gogo/src/main/java/aQute/shell/osgi/ServiceCommand.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/osgi/ServiceCommand.java
index 61d4087..4bce947 100644
--- a/gogo/src/main/java/aQute/shell/osgi/ServiceCommand.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/osgi/ServiceCommand.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.osgi;
+package org.apache.felix.gogo.shell.osgi;
 
 import java.util.*;
 
 import org.osgi.framework.*;
 import org.osgi.service.command.*;
 
-import aQute.shell.runtime.*;
+import org.apache.felix.gogo.shell.runtime.*;
 
 public class ServiceCommand extends Reflective implements Function {
 	ServiceReference	ref;
diff --git a/gogo/src/main/java/aQute/shell/runtime/Closure.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Closure.java
similarity index 99%
rename from gogo/src/main/java/aQute/shell/runtime/Closure.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Closure.java
index d4973cd..288937c 100644
--- a/gogo/src/main/java/aQute/shell/runtime/Closure.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Closure.java
@@ -19,7 +19,7 @@
 // DWB5: session.err is not redirected when creating pipeline
 // DWB6: add 'set -x' trace feature if echo is set
 // DWB7: removing variable via 'execute("name=") throws OutOfBoundsException
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.util.*;
 
diff --git a/gogo/src/main/java/aQute/shell/runtime/Command.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Command.java
similarity index 96%
rename from gogo/src/main/java/aQute/shell/runtime/Command.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Command.java
index cd9f500..e75cf8e 100644
--- a/gogo/src/main/java/aQute/shell/runtime/Command.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Command.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.util.*;
 
diff --git a/gogo/src/main/java/aQute/shell/runtime/CommandSessionImpl.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandSessionImpl.java
similarity index 99%
rename from gogo/src/main/java/aQute/shell/runtime/CommandSessionImpl.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandSessionImpl.java
index 1a73a00..6420dd3 100644
--- a/gogo/src/main/java/aQute/shell/runtime/CommandSessionImpl.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandSessionImpl.java
@@ -19,7 +19,7 @@
 // DWB8: throw IllegatlStateException if session used after closed (as per rfc132)
 // DWB9: there is no API to list all variables: https://www.osgi.org/bugzilla/show_bug.cgi?id=49
 // DWB10: add SCOPE support: https://www.osgi.org/bugzilla/show_bug.cgi?id=51
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.io.*;
 import java.lang.reflect.*;
diff --git a/gogo/src/main/java/aQute/shell/runtime/CommandShellImpl.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandShellImpl.java
similarity index 98%
rename from gogo/src/main/java/aQute/shell/runtime/CommandShellImpl.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandShellImpl.java
index 401bb00..0b01d8a 100644
--- a/gogo/src/main/java/aQute/shell/runtime/CommandShellImpl.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/CommandShellImpl.java
@@ -19,7 +19,7 @@
 // DWB11: add removeCommand: https://www.osgi.org/bugzilla/show_bug.cgi?id=49
 // DWB12: there is no API to list commands: https://www.osgi.org/bugzilla/show_bug.cgi?id=49
 // DWB13: addCommand() fails to add static methods (if target is Class)
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.io.*;
 import java.lang.reflect.*;
diff --git a/gogo/src/main/java/aQute/shell/runtime/Parser.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Parser.java
similarity index 98%
rename from gogo/src/main/java/aQute/shell/runtime/Parser.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Parser.java
index 10e28db..9521e22 100644
--- a/gogo/src/main/java/aQute/shell/runtime/Parser.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Parser.java
@@ -18,7 +18,7 @@
  */
 // DWB14: parser loops if // comment at start of program
 // DWB15: allow program to have trailing ';'
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.util.*;
 
diff --git a/gogo/src/main/java/aQute/shell/runtime/Pipe.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Pipe.java
similarity index 97%
rename from gogo/src/main/java/aQute/shell/runtime/Pipe.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Pipe.java
index 5ac8cdb..0afa078 100644
--- a/gogo/src/main/java/aQute/shell/runtime/Pipe.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Pipe.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 // DWB16: redirect System.err when creating pipe
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.io.*;
 import java.util.*;
diff --git a/gogo/src/main/java/aQute/shell/runtime/Reflective.java b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Reflective.java
similarity index 99%
rename from gogo/src/main/java/aQute/shell/runtime/Reflective.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Reflective.java
index 1b90b63..806fb8a 100644
--- a/gogo/src/main/java/aQute/shell/runtime/Reflective.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/runtime/Reflective.java
@@ -20,7 +20,7 @@
 // DWB17: coerce() doesn't support static void main(String[]) in rfc132
 // DWB18: coerce() doesn't extract cause from InvocationTargetException
 // DWB19: coerce() won't add empty array to satisfy Object[] argument
-package aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.lang.reflect.*;
 import java.util.*;
diff --git a/gogo/src/main/java/aQute/shell/stdio/StdioConsole.java b/gogo/src/main/java/org/apache/felix/gogo/shell/stdio/StdioConsole.java
similarity index 93%
rename from gogo/src/main/java/aQute/shell/stdio/StdioConsole.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/stdio/StdioConsole.java
index d923996..1da6c9e 100644
--- a/gogo/src/main/java/aQute/shell/stdio/StdioConsole.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/stdio/StdioConsole.java
@@ -16,12 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.stdio;
+package org.apache.felix.gogo.shell.stdio;
 
 import org.osgi.service.command.*;
 import org.osgi.service.component.*;
 
-import aQute.shell.console.*;
+import org.apache.felix.gogo.shell.console.*;
 
 public class StdioConsole extends Thread {
     final Console console = new Console();
diff --git a/gogo/src/main/java/aQute/shell/telnet/Handler.java b/gogo/src/main/java/org/apache/felix/gogo/shell/telnet/Handler.java
similarity index 94%
rename from gogo/src/main/java/aQute/shell/telnet/Handler.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/telnet/Handler.java
index e3791ea..7950be6 100644
--- a/gogo/src/main/java/aQute/shell/telnet/Handler.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/telnet/Handler.java
@@ -16,14 +16,14 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.telnet;
+package org.apache.felix.gogo.shell.telnet;
 
 import java.io.*;
 import java.net.*;
 
 import org.osgi.service.command.*;
 
-import aQute.shell.console.*;
+import org.apache.felix.gogo.shell.console.*;
 
 public class Handler extends Thread {
 	TelnetShell		master;
diff --git a/gogo/src/main/java/aQute/shell/telnet/TelnetShell.java b/gogo/src/main/java/org/apache/felix/gogo/shell/telnet/TelnetShell.java
similarity index 98%
rename from gogo/src/main/java/aQute/shell/telnet/TelnetShell.java
rename to gogo/src/main/java/org/apache/felix/gogo/shell/telnet/TelnetShell.java
index 6e66de6..b4371dc 100644
--- a/gogo/src/main/java/aQute/shell/telnet/TelnetShell.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/shell/telnet/TelnetShell.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.shell.telnet;
+package org.apache.felix.gogo.shell.telnet;
 
 import java.io.*;
 import java.net.*;
diff --git a/gogo/src/main/java/aQute/threadio/Marker.java b/gogo/src/main/java/org/apache/felix/gogo/threadio/Marker.java
similarity index 96%
rename from gogo/src/main/java/aQute/threadio/Marker.java
rename to gogo/src/main/java/org/apache/felix/gogo/threadio/Marker.java
index 5c6573b..e09ab37 100644
--- a/gogo/src/main/java/aQute/threadio/Marker.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/threadio/Marker.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.threadio;
+package org.apache.felix.gogo.threadio;
 
 import java.io.*;
 
diff --git a/gogo/src/main/java/aQute/threadio/ThreadIOImpl.java b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadIOImpl.java
similarity index 98%
rename from gogo/src/main/java/aQute/threadio/ThreadIOImpl.java
rename to gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadIOImpl.java
index 55b5ae3..2c592e2 100644
--- a/gogo/src/main/java/aQute/threadio/ThreadIOImpl.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadIOImpl.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 // DWB20: ThreadIO should check and reset IO if something (e.g. jetty) overrides
-package aQute.threadio;
+package org.apache.felix.gogo.threadio;
 
 import java.io.*;
 import java.util.logging.Logger;
diff --git a/gogo/src/main/java/aQute/threadio/ThreadInputStream.java b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadInputStream.java
similarity index 97%
rename from gogo/src/main/java/aQute/threadio/ThreadInputStream.java
rename to gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadInputStream.java
index e7fc918..9930775 100644
--- a/gogo/src/main/java/aQute/threadio/ThreadInputStream.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadInputStream.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.threadio;
+package org.apache.felix.gogo.threadio;
 
 import java.io.*;
 
diff --git a/gogo/src/main/java/aQute/threadio/ThreadPrintStream.java b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadPrintStream.java
similarity index 97%
rename from gogo/src/main/java/aQute/threadio/ThreadPrintStream.java
rename to gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadPrintStream.java
index b8a7a82..2ce015f 100644
--- a/gogo/src/main/java/aQute/threadio/ThreadPrintStream.java
+++ b/gogo/src/main/java/org/apache/felix/gogo/threadio/ThreadPrintStream.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package aQute.threadio;
+package org.apache.felix.gogo.threadio;
 
 import java.io.*;
 
diff --git a/gogo/src/test/java/test/aQute/shell/runtime/Context.java b/gogo/src/test/java/org/apache/felix/gogo/shell/runtime/Context.java
similarity index 93%
rename from gogo/src/test/java/test/aQute/shell/runtime/Context.java
rename to gogo/src/test/java/org/apache/felix/gogo/shell/runtime/Context.java
index 5070835..a3f1a47 100644
--- a/gogo/src/test/java/test/aQute/shell/runtime/Context.java
+++ b/gogo/src/test/java/org/apache/felix/gogo/shell/runtime/Context.java
@@ -16,10 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package test.aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
-import aQute.shell.runtime.*;
-import aQute.threadio.*;
+import org.apache.felix.gogo.threadio.*;
 
 public class Context extends CommandShellImpl {
 	public static final String EMPTY = "";
diff --git a/gogo/src/test/java/test/aQute/shell/runtime/TestParser.java b/gogo/src/test/java/org/apache/felix/gogo/shell/runtime/TestParser.java
similarity index 98%
rename from gogo/src/test/java/test/aQute/shell/runtime/TestParser.java
rename to gogo/src/test/java/org/apache/felix/gogo/shell/runtime/TestParser.java
index 5f880bb..1979e24 100644
--- a/gogo/src/test/java/test/aQute/shell/runtime/TestParser.java
+++ b/gogo/src/test/java/org/apache/felix/gogo/shell/runtime/TestParser.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package test.aQute.shell.runtime;
+package org.apache.felix.gogo.shell.runtime;
 
 import java.io.*;
 import java.util.*;
@@ -26,8 +26,6 @@
 
 import org.osgi.service.command.*;
 
-import aQute.shell.runtime.*;
-
 public class TestParser extends TestCase {
     int beentheredonethat = 0;
 
diff --git a/gogo/src/test/java/test/aQute/threadio/TestThreadIO.java b/gogo/src/test/java/org/apache/felix/gogo/threadio/TestThreadIO.java
similarity index 97%
rename from gogo/src/test/java/test/aQute/threadio/TestThreadIO.java
rename to gogo/src/test/java/org/apache/felix/gogo/threadio/TestThreadIO.java
index d986814..53b373b 100644
--- a/gogo/src/test/java/test/aQute/threadio/TestThreadIO.java
+++ b/gogo/src/test/java/org/apache/felix/gogo/threadio/TestThreadIO.java
@@ -16,13 +16,12 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package test.aQute.threadio;
+package org.apache.felix.gogo.threadio;
 
 import java.io.*;
 import java.util.*;
 
 import junit.framework.*;
-import aQute.threadio.*;
 
 public class TestThreadIO extends TestCase {
     
