pushed some things from ui to core to allow reuse in the dfs plugins.
Needs more work, things aren't cleanly separated here.
diff --git a/org.apache.hdt.core/.classpath b/org.apache.hdt.core/.classpath
index ad32c83..355df07 100644
--- a/org.apache.hdt.core/.classpath
+++ b/org.apache.hdt.core/.classpath
@@ -3,5 +3,6 @@
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="lib" path="/Users/amberry/tools/hadoop-1.0.4/hadoop-core-1.0.4.jar"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.hdt.core/META-INF/MANIFEST.MF b/org.apache.hdt.core/META-INF/MANIFEST.MF
index b2eae6b..e38d50f 100644
--- a/org.apache.hdt.core/META-INF/MANIFEST.MF
+++ b/org.apache.hdt.core/META-INF/MANIFEST.MF
@@ -9,8 +9,14 @@
  org.eclipse.core.resources,
  org.eclipse.jdt.core,
  org.eclipse.core.expressions,
- org.eclipse.wst.server.core
+ org.eclipse.wst.server.core,
+ org.eclipse.swt,
+ org.eclipse.jface,
+ org.eclipse.ui,
+ org.eclipse.jdt.ui
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Bundle-ActivationPolicy: lazy
 Export-Package: org.apache.hdt.core,
+ org.apache.hdt.core.cluster,
+ org.apache.hdt.core.cluster.utils,
  org.apache.hdt.core.natures
diff --git a/org.apache.hdt.core/src/org/apache/hdt/core/Activator.java b/org.apache.hdt.core/src/org/apache/hdt/core/Activator.java
index 624d949..00ed47e 100644
--- a/org.apache.hdt.core/src/org/apache/hdt/core/Activator.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/Activator.java
@@ -1,31 +1,47 @@
 package org.apache.hdt.core;
 
-import org.osgi.framework.BundleActivator;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
 import org.osgi.framework.BundleContext;
 
-public class Activator implements BundleActivator {
+public class Activator extends AbstractUIPlugin {
 
-	private static BundleContext context;
-	public static final String PLUGIN_ID = "org.apache.hdt.core";
+	// The plug-in ID
+	public static final String PLUGIN_ID = "org.apache.hdt.ui"; //$NON-NLS-1$
 
-	static BundleContext getContext() {
-		return context;
+	// The shared instance
+	private static Activator plugin;
+	
+	/**
+	 * The constructor
+	 */
+	public Activator() {
 	}
 
 	/*
 	 * (non-Javadoc)
-	 * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
 	 */
-	public void start(BundleContext bundleContext) throws Exception {
-		Activator.context = bundleContext;
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
 	}
 
 	/*
 	 * (non-Javadoc)
-	 * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
 	 */
-	public void stop(BundleContext bundleContext) throws Exception {
-		Activator.context = null;
+	public void stop(BundleContext context) throws Exception {
+		plugin = null;
+		super.stop(context);
+	}
+
+	/**
+	 * Returns the shared instance
+	 *
+	 * @return the shared instance
+	 */
+	public static Activator getDefault() {
+		return plugin;
 	}
 
 }
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ConfProp.java b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/ConfProp.java
similarity index 98%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ConfProp.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/cluster/ConfProp.java
index 1468b01..1d8b551 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ConfProp.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/ConfProp.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.cluster;
+package org.apache.hdt.core.cluster;
 
 import java.util.HashMap;
 import java.util.Map;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopCluster.java b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopCluster.java
similarity index 97%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopCluster.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopCluster.java
index 588dd4e..a04bda6 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopCluster.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopCluster.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.cluster;
+package org.apache.hdt.core.cluster;
 
 import java.io.File;
 import java.io.FileOutputStream;
@@ -34,8 +34,11 @@
 import javax.xml.parsers.ParserConfigurationException;
 
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hdt.ui.Activator;
-import org.apache.hdt.ui.cluster.utils.JarModule;
+import org.apache.hdt.core.Activator;
+import org.apache.hdt.core.cluster.ConfProp;
+import org.apache.hdt.core.cluster.HadoopJob;
+import org.apache.hdt.core.cluster.IJobListener;
+import org.apache.hdt.core.cluster.utils.JarModule;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.io.IOUtils;
 import org.apache.hadoop.mapred.JobClient;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopJob.java b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopJob.java
similarity index 99%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopJob.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopJob.java
index 78f3fc6..03edc6b 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/HadoopJob.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/HadoopJob.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.cluster;
+package org.apache.hdt.core.cluster;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IJobListener.java b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/IJobListener.java
similarity index 92%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IJobListener.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/cluster/IJobListener.java
index 5d001c4..fb591f3 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IJobListener.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/IJobListener.java
@@ -16,9 +16,9 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.cluster;
+package org.apache.hdt.core.cluster;
 
-import org.apache.hdt.ui.cluster.utils.JarModule;
+import org.apache.hdt.core.cluster.utils.JarModule;
 
 /**
  * Interface for updating/adding jobs to the MapReduce Server view.
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/utils/JarModule.java b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/utils/JarModule.java
similarity index 96%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/utils/JarModule.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/cluster/utils/JarModule.java
index 71d5559..2127091 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/utils/JarModule.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/cluster/utils/JarModule.java
@@ -16,13 +16,13 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.cluster.utils;
+package org.apache.hdt.core.cluster.utils;
 
 import java.io.File;
 import java.util.logging.Logger;
 
-import org.apache.hdt.ui.Activator;
-import org.apache.hdt.ui.dialogs.ErrorMessageDialog;
+import org.apache.hdt.core.Activator;
+import org.apache.hdt.core.dialogs.ErrorMessageDialog;
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.Path;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/dialogs/ErrorMessageDialog.java b/org.apache.hdt.core/src/org/apache/hdt/core/dialogs/ErrorMessageDialog.java
similarity index 97%
rename from org.apache.hdt.ui/src/org/apache/hdt/ui/dialogs/ErrorMessageDialog.java
rename to org.apache.hdt.core/src/org/apache/hdt/core/dialogs/ErrorMessageDialog.java
index bb0137a..71067b9 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/dialogs/ErrorMessageDialog.java
+++ b/org.apache.hdt.core/src/org/apache/hdt/core/dialogs/ErrorMessageDialog.java
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.hdt.ui.dialogs;
+package org.apache.hdt.core.dialogs;
 
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.swt.widgets.Display;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/actions/EditLocationAction.java b/org.apache.hdt.ui/src/org/apache/hdt/ui/actions/EditLocationAction.java
index 6287449..f39b541 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/actions/EditLocationAction.java
+++ b/org.apache.hdt.ui/src/org/apache/hdt/ui/actions/EditLocationAction.java
@@ -18,8 +18,8 @@
 
 package org.apache.hdt.ui.actions;
 
+import org.apache.hdt.core.cluster.HadoopCluster;
 import org.apache.hdt.ui.ImageLibrary;
-import org.apache.hdt.ui.cluster.HadoopCluster;
 import org.apache.hdt.ui.wizards.HadoopLocationWizard;
 import org.apache.hdt.ui.views.ClusterView;
 import org.eclipse.jface.action.Action;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IHadoopClusterListener.java b/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IHadoopClusterListener.java
index 2f7a245..8d33cc8 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IHadoopClusterListener.java
+++ b/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/IHadoopClusterListener.java
@@ -18,7 +18,7 @@
 
 package org.apache.hdt.ui.cluster;
 
-import org.apache.hdt.ui.cluster.HadoopCluster;
+import org.apache.hdt.core.cluster.HadoopCluster;
 
 /**
  * Interface for monitoring server changes
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ServerRegistry.java b/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ServerRegistry.java
index a1a990e..974315b 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ServerRegistry.java
+++ b/org.apache.hdt.ui/src/org/apache/hdt/ui/cluster/ServerRegistry.java
@@ -29,8 +29,8 @@
 import java.util.TreeMap;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hdt.core.cluster.HadoopCluster;
 import org.apache.hdt.ui.Activator;
-import org.apache.hdt.ui.cluster.HadoopCluster;
 import org.eclipse.jface.dialogs.MessageDialog;
 
 /**
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/views/ClusterView.java b/org.apache.hdt.ui/src/org/apache/hdt/ui/views/ClusterView.java
index 6b81b8d..0c53a19 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/views/ClusterView.java
+++ b/org.apache.hdt.ui/src/org/apache/hdt/ui/views/ClusterView.java
@@ -20,13 +20,13 @@
 
 import java.util.Collection;
 
+import org.apache.hdt.core.cluster.HadoopCluster;
+import org.apache.hdt.core.cluster.HadoopJob;
+import org.apache.hdt.core.cluster.IJobListener;
+import org.apache.hdt.core.cluster.utils.JarModule;
 import org.apache.hdt.ui.ImageLibrary;
 import org.apache.hdt.ui.actions.EditLocationAction;
 import org.apache.hdt.ui.actions.NewLocationAction;
-import org.apache.hdt.ui.cluster.HadoopJob;
-import org.apache.hdt.ui.cluster.HadoopCluster;
-import org.apache.hdt.ui.cluster.IJobListener;
-import org.apache.hdt.ui.cluster.utils.JarModule;
 import org.apache.hdt.ui.cluster.IHadoopClusterListener;
 import org.apache.hdt.ui.cluster.ServerRegistry;
 import org.eclipse.jface.action.Action;
diff --git a/org.apache.hdt.ui/src/org/apache/hdt/ui/wizards/HadoopLocationWizard.java b/org.apache.hdt.ui/src/org/apache/hdt/ui/wizards/HadoopLocationWizard.java
index 7079c37..8fe9d19 100644
--- a/org.apache.hdt.ui/src/org/apache/hdt/ui/wizards/HadoopLocationWizard.java
+++ b/org.apache.hdt.ui/src/org/apache/hdt/ui/wizards/HadoopLocationWizard.java
@@ -29,8 +29,8 @@
 import java.util.Map.Entry;
 
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hdt.ui.cluster.ConfProp;
-import org.apache.hdt.ui.cluster.HadoopCluster;
+import org.apache.hdt.core.cluster.ConfProp;
+import org.apache.hdt.core.cluster.HadoopCluster;
 import org.apache.hdt.ui.cluster.ServerRegistry;
 import org.eclipse.jface.dialogs.IMessageProvider;
 import org.eclipse.jface.wizard.WizardPage;