diff --git a/assembly/pom.xml b/assembly/pom.xml
index d300c36..df63526 100644
--- a/assembly/pom.xml
+++ b/assembly/pom.xml
@@ -39,10 +39,15 @@
     </dependency>
     <dependency>
       <groupId>org.apache.jclouds.cli</groupId>
-      <artifactId>runner</artifactId>
+      <artifactId>jclouds-cli-runner</artifactId>
       <version>${project.parent.version}</version>
     </dependency>
     <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
+      <version>${guava.version}</version>
+    </dependency>
+    <dependency>
       <groupId>org.apache.karaf</groupId>
       <artifactId>apache-karaf</artifactId>
       <type>tar.gz</type>
diff --git a/assembly/src/main/assembly/unix.xml b/assembly/src/main/assembly/unix.xml
index 0c00ed6..66f2dc7 100644
--- a/assembly/src/main/assembly/unix.xml
+++ b/assembly/src/main/assembly/unix.xml
@@ -138,10 +138,17 @@
             <useTransitiveDependencies>false</useTransitiveDependencies>
         </dependencySet>
         <dependencySet>
-            <outputDirectory>/system/org/apache/jclouds/cli/runner/${project.version}/</outputDirectory>
+	    <outputDirectory>/system/com/google/guava/guava/${guava.version}/</outputDirectory>
             <fileMode>0644</fileMode>
             <includes>
-                <include>org.apache.jclouds.cli:runner</include>
+                <include>com.google:guava</include>
+            </includes>
+        </dependencySet>
+        <dependencySet>
+            <outputDirectory>/system/org/apache/jclouds/cli/jclouds-cli-runner/${project.version}/</outputDirectory>
+            <fileMode>0644</fileMode>
+            <includes>
+                <include>org.apache.jclouds.cli:jclouds-cli-runner</include>
             </includes>
         </dependencySet>
         <dependencySet>
diff --git a/assembly/src/main/assembly/win.xml b/assembly/src/main/assembly/win.xml
index df3d11b..fc46e34 100644
--- a/assembly/src/main/assembly/win.xml
+++ b/assembly/src/main/assembly/win.xml
@@ -136,10 +136,17 @@
             <useTransitiveDependencies>false</useTransitiveDependencies>
         </dependencySet>
         <dependencySet>
-            <outputDirectory>/system/org/apache/jclouds/cli/runner/${project.version}/</outputDirectory>
+	    <outputDirectory>/system/com/google/guava/guava/${guava.version}/</outputDirectory>
             <fileMode>0644</fileMode>
             <includes>
-                <include>org.apache.jclouds.cli:runner</include>
+                <include>com.google:guava</include>
+            </includes>
+        </dependencySet>
+        <dependencySet>
+            <outputDirectory>/system/org/apache/jclouds/cli/jclouds-cli-runner/${project.version}/</outputDirectory>
+            <fileMode>0644</fileMode>
+            <includes>
+                <include>org.apache.jclouds.cli:jclouds-cli-runner</include>
             </includes>
         </dependencySet>
         <dependencySet>
diff --git a/assembly/src/main/filtered-resources/etc/custom.properties b/assembly/src/main/filtered-resources/etc/custom.properties
index e0f6cee..be0f24e 100644
--- a/assembly/src/main/filtered-resources/etc/custom.properties
+++ b/assembly/src/main/filtered-resources/etc/custom.properties
@@ -17,6 +17,13 @@
 #
 ################################################################################
 
+#
+# All the values specified here will override the default values given
+# in config.properties.
+#
+
+karaf.systemBundlesStartLevel=50
+
 # Extra packages appended after standard packages
 org.osgi.framework.system.packages.extra = \
   org.apache.karaf.branding, \
diff --git a/assembly/src/main/filtered-resources/etc/org.jclouds.shell.cfg b/assembly/src/main/filtered-resources/etc/org.apache.jclouds.shell.cfg
similarity index 100%
rename from assembly/src/main/filtered-resources/etc/org.jclouds.shell.cfg
rename to assembly/src/main/filtered-resources/etc/org.apache.jclouds.shell.cfg
diff --git a/assembly/src/main/filtered-resources/etc/startup.properties b/assembly/src/main/filtered-resources/etc/startup.properties
index 4674d78..d7f990c 100644
--- a/assembly/src/main/filtered-resources/etc/startup.properties
+++ b/assembly/src/main/filtered-resources/etc/startup.properties
@@ -31,10 +31,13 @@
 #
 # The rest of the services..
 #
-org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/${asm.bundle.version}/org.apache.servicemix.bundles.asm-${asm.bundle.version}.jar=20
+org/ow2/asm/asm-all/${asm.version}/asm-all-${asm.version}.jar=20
 org/apache/aries/org.apache.aries.util/${aries.util.version}/org.apache.aries.util-${aries.util.version}.jar=20
-org/apache/aries/proxy/org.apache.aries.proxy/${aries.proxy.version}/org.apache.aries.proxy-${aries.proxy.version}.jar=20
-org/apache/aries/blueprint/org.apache.aries.blueprint/${aries.blueprint.version}/org.apache.aries.blueprint-${aries.blueprint.version}.jar=20
+org/apache/aries/proxy/org.apache.aries.proxy.api/${aries.proxy.api.version}/org.apache.aries.proxy.api-${aries.proxy.api.version}.jar=20
+org/apache/aries/proxy/org.apache.aries.proxy.impl/${aries.proxy.version}/org.apache.aries.proxy.impl-${aries.proxy.version}.jar=20
+org/apache/aries/blueprint/org.apache.aries.blueprint.api/${aries.blueprint.api.version}/org.apache.aries.blueprint.api-${aries.blueprint.api.version}.jar=20
+org/apache/aries/blueprint/org.apache.aries.blueprint.core/${aries.blueprint.core.version}/org.apache.aries.blueprint.core-${aries.blueprint.core.version}.jar=20
+org/apache/aries/blueprint/org.apache.aries.blueprint.cm/${aries.blueprint.cm.version}/org.apache.aries.blueprint.cm-${aries.blueprint.cm.version}.jar=20
 
 org/apache/karaf/shell/org.apache.karaf.shell.console/${karaf.version}/org.apache.karaf.shell.console-${karaf.version}.jar=29
 org/apache/karaf/shell/org.apache.karaf.shell.log/${karaf.version}/org.apache.karaf.shell.log-${karaf.version}.jar=30
diff --git a/assembly/src/main/filtered-resources/unix/bin/shell b/assembly/src/main/filtered-resources/unix/bin/shell
index 327b505..d6ee688 100644
--- a/assembly/src/main/filtered-resources/unix/bin/shell
+++ b/assembly/src/main/filtered-resources/unix/bin/shell
@@ -261,7 +261,8 @@
     fi
 
     # Setup classpath
-    CLASSPATH="$KARAF_HOME/system/org/apache/jclouds/cli/runner/${project.version}/runner-${project.version}.jar"
+    CLASSPATH="$KARAF_HOME/system/org/apache/jclouds/cli/jclouds-cli-runner/${project.version}/jclouds-cli-runner-${project.version}.jar"
+    CLASSPATH="$CLASSPATH:$KARAF_HOME/system/com/google/guava/guava/${guava.version}/guava-${guava.version}.jar"
     CLASSPATH="$CLASSPATH:$KARAF_HOME/system/org/apache/jclouds/jclouds-core/${jclouds.version}/jclouds-core-${jclouds.version}.jar"
     CLASSPATH="$CLASSPATH:$KARAF_HOME/system/org/apache/jclouds/jclouds-blobstore/${jclouds.version}/jclouds-blobstore-${jclouds.version}.jar"
     CLASSPATH="$CLASSPATH:$KARAF_HOME/system/org/apache/karaf/shell/org.apache.karaf.shell.console/${karaf.version}/org.apache.karaf.shell.console-${karaf.version}.jar"
diff --git a/assembly/src/main/filtered-resources/win/bin/shell.bat b/assembly/src/main/filtered-resources/win/bin/shell.bat
index 1a41ef6..7597649 100644
--- a/assembly/src/main/filtered-resources/win/bin/shell.bat
+++ b/assembly/src/main/filtered-resources/win/bin/shell.bat
@@ -111,7 +111,8 @@
     call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS%
 :KARAF_DEBUG_END
 
-set CLASSPATH=%KARAF_HOME%\system\org\apache\jclouds\cli\runner\${project.version}\runner-${project.version}.jar
+set CLASSPATH=%KARAF_HOME%\system\org\apache\jclouds\cli\jclouds-cli-runner\${project.version}\jclouds-cli-runner-${project.version}.jar
+set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\system\com\google\guava\guava/${guava.version}\guava-${guava.version}.jar"
 set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\system\org\apache\jclouds\jclouds-core\${jclouds.version}\jclouds-core-${jclouds.version}.jar
 set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\system\org\apache\jclouds\jclouds-blobstore\${jclouds.version}\jclouds-blobstore-${jclouds.version}.jar
 set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\system\org\apache\karaf\shell\org.apache.karaf.shell.console\${karaf.version}\org.apache.karaf.shell.console-${karaf.version}.jar
diff --git a/project/pom.xml b/project/pom.xml
index 82123c0..2a89a18 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -66,20 +66,23 @@
 
   <properties>
     <!-- Karaf Version Dependencies -->
-    <karaf.version>2.2.7</karaf.version>
-    <pax.url.version>1.2.8</pax.url.version>
-    <pax.logging.version>1.6.5</pax.logging.version>
-    <felix.configadmin.version>1.2.8</felix.configadmin.version>
-    <aries.util.version>0.3</aries.util.version>
-    <aries.proxy.version>0.3</aries.proxy.version>
-    <aries.blueprint.version>0.3.1</aries.blueprint.version>
-    <aries.jmx.version>0.3</aries.jmx.version>
-    <asm.bundle.version>3.3.1_1</asm.bundle.version>
-    <felix.fileinstall.version>3.2.2</felix.fileinstall.version>
+    <karaf.version>2.3.2</karaf.version>
+    <pax.url.version>1.3.6</pax.url.version>
+    <pax.logging.version>1.7.0</pax.logging.version>
+    <felix.configadmin.version>1.6.0</felix.configadmin.version>
+    <aries.util.version>1.1.0</aries.util.version>
+    <aries.proxy.version>1.0.1</aries.proxy.version>
+    <aries.proxy.api.version>1.0.0</aries.proxy.api.version>
+    <aries.blueprint.api.version>1.0.0</aries.blueprint.api.version>
+    <aries.blueprint.core.version>1.1.0</aries.blueprint.core.version>
+    <aries.blueprint.cm.version>1.0.1</aries.blueprint.cm.version>
+    <aries.jmx.version>1.1.0</aries.jmx.version>
+    <asm.version>4.1</asm.version>
+    <felix.fileinstall.version>3.2.6</felix.fileinstall.version>
     <jclouds.karaf.version>${project.parent.version}</jclouds.karaf.version>
     <jclouds.version>${project.parent.version}</jclouds.version>
     <log4j.version>1.2.17</log4j.version>
-    <slf4j.version>1.6.6</slf4j.version>
+    <slf4j.version>1.7.2</slf4j.version>
     <!-- Plugin Versions -->
     <maven-antrun-plugin.version>1.7</maven-antrun-plugin.version>
     <maven-assembly-plugin.version>2.2.1</maven-assembly-plugin.version>
diff --git a/runner/src/main/java/org/jclouds/cli/runner/Main.java b/runner/src/main/java/org/jclouds/cli/runner/Main.java
index 52f1b7a..f4df6cb 100644
--- a/runner/src/main/java/org/jclouds/cli/runner/Main.java
+++ b/runner/src/main/java/org/jclouds/cli/runner/Main.java
@@ -305,7 +305,7 @@
      * @throws Exception
      */
     protected Console createConsole(CommandProcessorImpl commandProcessor, InputStream in, PrintStream out, PrintStream err, Terminal terminal) throws Exception {
-        return new Console(commandProcessor, in, out, err, terminal, null);
+        return new Console(commandProcessor, in, out, err, terminal, "UTF-8", null);
     }
 
     /**
