diff --git a/org.eclipse.wtp.releng.webupdatesite/build-home/featureFileCreate.jar b/org.eclipse.wtp.releng.webupdatesite/build-home/featureFileCreate.jar
index 0ee4bdd387f1222996d70f652a9ce261c8ae5041..453c293a5b8c2df21e2d57ce15640bbd04337ca6 100644
Binary files a/org.eclipse.wtp.releng.webupdatesite/build-home/featureFileCreate.jar and b/org.eclipse.wtp.releng.webupdatesite/build-home/featureFileCreate.jar differ
diff --git a/org.eclipse.wtp.releng.webupdatesite/featureFileUpdaterDescription.jardesc b/org.eclipse.wtp.releng.webupdatesite/featureFileUpdaterDescription.jardesc
index 9481d5a76319f4baa40ae43cfa5e187397e17eba..09cc54c53eb4098e539f07ec11fd21e3d00cc6a9 100644
--- a/org.eclipse.wtp.releng.webupdatesite/featureFileUpdaterDescription.jardesc
+++ b/org.eclipse.wtp.releng.webupdatesite/featureFileUpdaterDescription.jardesc
@@ -33,8 +33,8 @@
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/updateMirrorProject.xml"/>
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/copyToMilestoneDirectory-SiteFiles.sh"/>
         <folder path="/org.eclipse.wtp.releng.webupdatesite/META-INF"/>
-        <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/properties.shsource"/>
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/createMirrorSite.xml"/>
+        <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/properties.shsource"/>
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/updateGanymedeMirrorAll.xml"/>
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/ant.sh"/>
         <file path="/org.eclipse.wtp.releng.webupdatesite/build-home/createMirrorFile.sh"/>
diff --git a/org.eclipse.wtp.releng.webupdatesite/siteFileUpdaterManifest.mf b/org.eclipse.wtp.releng.webupdatesite/siteFileUpdaterManifest.mf
deleted file mode 100644
index f78d55238b6883d51273a38ade0dff8fe1afa0f4..0000000000000000000000000000000000000000
--- a/org.eclipse.wtp.releng.webupdatesite/siteFileUpdaterManifest.mf
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-Main-Class: org.eclipse.callisto.tools.SiteFileUpdater
-
diff --git a/org.eclipse.wtp.releng.webupdatesite/src/org/eclipse/wtp/releng/tools/CreateFeatureUpdateFile.java b/org.eclipse.wtp.releng.webupdatesite/src/org/eclipse/wtp/releng/tools/CreateFeatureUpdateFile.java
index 3b31793b0b9277879179f625877b4c502a47a407..26a8f0d7860ad4b6e708cabb79f66eb3d1e06b63 100644
--- a/org.eclipse.wtp.releng.webupdatesite/src/org/eclipse/wtp/releng/tools/CreateFeatureUpdateFile.java
+++ b/org.eclipse.wtp.releng.webupdatesite/src/org/eclipse/wtp/releng/tools/CreateFeatureUpdateFile.java
@@ -28,57 +28,36 @@ public class CreateFeatureUpdateFile {
 	final private static String PATH_SEPARATOR = System.getProperty("file.separator");
 
 	private String rawUpdateSite;
-	private int returnCode;
 	private String featuresDirectoryLocation;
 	private FullJarNameParser fullJarNameParser = new FullJarNameParser();
 
-// private String[] featuresOfInterest = new String[]{"org.eclipse.wst",
-	// "org.eclipse.jst", "org.eclipse.jpt.feature",
-	// "org.eclipse.jpt.eclipselink.feature",
-	// "org.eclipse.wst.xml_ui.feature", "org.eclipse.wst.jsdt.feature",
-	// "org.eclipse.wst.common_ui.feature",
-	// "org.eclipse.jst.webpageeditor.feature",
-	// "org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature",
-	// "org.eclipse.jst.ws.axis2tools.feature", "org.eclipse.wst.xsl.feature",
-	// "org.eclipse.jst.ws.cxf.feature", "org.eclipse.wst.sdk",
-	// "org.eclipse.jst.sdk", "org.eclipse.jpt_sdk.feature",
-	// "org.eclipse.jpt.eclipselink_sdk.feature",
-	// "org.eclipse.wst.xml_sdk.feature", "org.eclipse.wst.jsdt_sdk.feature",
-	// "org.eclipse.wst.common_sdk.feature",
-	// "org.eclipse.jst.webpageeditor_sdk.feature",
-	// "org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature",
-	// "org.eclipse.jst.ws.axis2tools_sdk.feature",
-	// "org.eclipse.wst.xsl_sdk.feature",
-	// "org.eclipse.jst.ws.cxf_sdk.feature",};
-
-// private String[] shortListOfInterest = new String[]{"org.eclipse.wst",
-	// "org.eclipse.jst", "org.eclipse.jpt.feature",
-	// "org.eclipse.jpt.eclipselink.feature",
-	// "org.eclipse.wst.xml_ui.feature", "org.eclipse.wst.jsdt.feature",
-	// "org.eclipse.wst.common_ui.feature",
-	// "org.eclipse.jst.webpageeditor.feature",
-	// "org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature",
-	// "org.eclipse.jst.ws.axis2tools.feature",};
+
 	private String[] featuresOfInterest = new String[]{"org.eclipse.jpt.feature", "org.eclipse.jpt.eclipselink.feature", "org.eclipse.wst.xml_ui.feature", "org.eclipse.wst.jsdt.feature", "org.eclipse.wst.common_ui.feature", "org.eclipse.jst.webpageeditor.feature", "org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature", "org.eclipse.jst.ws.axis2tools.feature", "org.eclipse.wst.xsl.feature", "org.eclipse.jst.ws.cxf.feature", "org.eclipse.jpt_sdk.feature", "org.eclipse.jpt.eclipselink_sdk.feature", "org.eclipse.wst.xml_sdk.feature", "org.eclipse.wst.jsdt_sdk.feature", "org.eclipse.wst.common_sdk.feature", "org.eclipse.jst.webpageeditor_sdk.feature", "org.eclipse.jst.jsf.apache.trinidad.tagsupport_sdk.feature", "org.eclipse.jst.ws.axis2tools_sdk.feature", "org.eclipse.wst.xsl_sdk.feature", "org.eclipse.jst.ws.cxf_sdk.feature",};
 
 	private String[] shortListOfInterest = new String[]{"org.eclipse.jpt.feature", "org.eclipse.jpt.eclipselink.feature", "org.eclipse.wst.xml_ui.feature", "org.eclipse.wst.jsdt.feature", "org.eclipse.wst.common_ui.feature", "org.eclipse.jst.webpageeditor.feature", "org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature", "org.eclipse.jst.ws.axis2tools.feature",};
 
 	public static void main(String[] args) {
 
+		int returnCode = 0;
 		if (args.length != 2) {
 			System.out.println("    Error: Program needs stream and rawUpdateSite");
 		}
 		else {
 			try {
-				new CreateFeatureUpdateFile().createFeatureFiles(args);
+				returnCode = new CreateFeatureUpdateFile().createFeatureFiles(args);
 			}
 			catch (IOException e) {
 				e.printStackTrace();
 			}
+			catch (SAXException e) {
+				e.printStackTrace();
+			}
 		}
+		System.exit(returnCode);
 	}
 
-	private void createFeatureFiles(String[] args) throws IOException {
+	private int createFeatureFiles(String[] args) throws IOException, SAXException {
+		int returnCode = 0;
 		String stream = args[0].trim();
 		rawUpdateSite = args[1].trim();
 		if (!rawUpdateSite.endsWith(PATH_SEPARATOR)) {
@@ -98,17 +77,28 @@ public class CreateFeatureUpdateFile {
 				returnCode = 9;
 			}
 			else {
+				Map currentFeatureVersions = getCurrentFeatures(featuresDirectories);
 				if ("Galileo".equals(stream)) {
 					String scfilename = rawUpdateSite + "webtools.build";
 					System.out.println("Creating short List for Galileo site");
 					System.out.println("   filename: " + scfilename);
-					doListForGalileo(featuresDirectories, shortListOfInterest, scfilename);
+					doListForGalileo(currentFeatureVersions, shortListOfInterest, scfilename);
+					// update site.xml, incase some features are "new".
+					// this is just needed for now, as long as we use site.xml
+					// to define categories
+					String sitexmlFileName = rawUpdateSite + "site.xml";
+					updateSiteXml(currentFeatureVersions, sitexmlFileName);
 				}
 				else if ("Helios".equals(stream)) {
 					String scfilename = rawUpdateSite + "webtools.build";
 					System.out.println("Creating short List for Helios site");
 					System.out.println("   filename: " + scfilename);
-					doListForHelios(featuresDirectories, shortListOfInterest, scfilename);
+					doListForHelios(currentFeatureVersions, shortListOfInterest, scfilename);
+					// update site.xml, incase some features are "new".
+					// this is just needed for now, as long as we use site.xml
+					// to define categories
+					String sitexmlFileName = rawUpdateSite + "site.xml";
+					updateSiteXml(currentFeatureVersions, sitexmlFileName);
 				}
 				else if ("Ganymede".equals(stream)) {
 					String filename = "features-ganymede-wtp.xml";
@@ -148,9 +138,32 @@ public class CreateFeatureUpdateFile {
 				}
 			}
 		}
-		System.exit(returnCode);
+		return returnCode;
 	}
 
+	private void updateSiteXml(Map currentFeatureVersions, String sitexmlFileName) throws IOException, SAXException {
+		FileOutputStream outfile = null;
+		Document siteDOM = getSiteDOM(sitexmlFileName);
+
+		try {
+
+			Document newDOM = updateFeatureDOM(siteDOM, currentFeatureVersions);
+
+			// we'll write over what we read it
+			outfile = new FileOutputStream(sitexmlFileName);
+			CommonXML.serialize(newDOM, outfile);
+
+			System.out.println("\tSite.xml output to: " + sitexmlFileName); //$NON-NLS-1$
+
+		}
+		finally {
+			if (outfile != null) {
+				outfile.close();
+			}
+		}
+	}
+
+
 	private void doList(String[] featureDirectories, String[] featureOfFocus, String filename) throws IOException {
 		File outFile = new File(filename);
 		Writer output = new FileWriter(outFile);
@@ -219,25 +232,28 @@ public class CreateFeatureUpdateFile {
 
 	}
 
-	private void doListForGalileo(String[] featureDirectories, String[] featureOfFocus, String filename) throws IOException {
+	private void doListForGalileo(Map currentFeatureVersions, String[] featureOfFocus, String filename) throws IOException {
 
 		String galeleoTemplateFile = "galileo.webtools.build.xml";
-		createBuildFile(featureDirectories, featureOfFocus, filename, galeleoTemplateFile);
+		createBuildFile(currentFeatureVersions, filename, galeleoTemplateFile);
 
 	}
-	private void doListForHelios(String[] featureDirectories, String[] featureOfFocus, String filename) throws IOException {
+
+	private void doListForHelios(Map currentFeatureVersions, String[] featureOfFocus, String filename) throws IOException {
 
 		String galeleoTemplateFile = "helios.webtools.build.xml";
-		createBuildFile(featureDirectories, featureOfFocus, filename, galeleoTemplateFile);
+		createBuildFile(currentFeatureVersions, filename, galeleoTemplateFile);
 
 	}
-	private void createBuildFile(String[] featureDirectories, String[] featureOfFocus, String filename, String templateFile) throws IOException, FileNotFoundException {
+
+	private void createBuildFile(Map currentFeatureVersions, String filename, String templateFile) throws IOException, FileNotFoundException {
 		FileOutputStream outfile = null;
 		Document templateDom = getTemplateDOM(templateFile);
 
 		try {
 
-			Document newDOM = substitureLatestVersions(featureDirectories, featureOfFocus, templateDom);
+			Document newDOM = updateFeatureDOM(templateDom, currentFeatureVersions);
+
 
 			outfile = new FileOutputStream(filename);
 			CommonXML.serialize(newDOM, outfile);
@@ -252,17 +268,7 @@ public class CreateFeatureUpdateFile {
 		}
 	}
 
-	private Document substitureLatestVersions(String[] featureDirectories, String[] featureOfFocus, Document startingDOM) throws IOException {
-
-		Map currentFeatureVersions = new HashMap();
-		for (int i = 0; i < featureDirectories.length; i++) {
-			String directoryName = featureDirectories[i];
-			fullJarNameParser.parse(directoryName);
-			String projectName = fullJarNameParser.getProjectString();
-			String versionString = fullJarNameParser.getVersionString();
-			currentFeatureVersions.put(projectName, versionString);
-		}
-
+	private Document updateFeatureDOM(Document startingDOM, Map currentFeatureVersions) {
 		NodeList features = startingDOM.getElementsByTagName("features");
 
 		for (int i = 0; i < features.getLength(); i++) {
@@ -280,6 +286,18 @@ public class CreateFeatureUpdateFile {
 		return startingDOM;
 	}
 
+	private Map getCurrentFeatures(String[] featureDirectories) {
+		Map currentFeatureVersions = new HashMap();
+		for (int i = 0; i < featureDirectories.length; i++) {
+			String directoryName = featureDirectories[i];
+			fullJarNameParser.parse(directoryName);
+			String projectName = fullJarNameParser.getProjectString();
+			String versionString = fullJarNameParser.getVersionString();
+			currentFeatureVersions.put(projectName, versionString);
+		}
+		return currentFeatureVersions;
+	}
+
 	private Document getTemplateDOM(String templateFileName) throws IOException {
 
 
@@ -302,4 +320,16 @@ public class CreateFeatureUpdateFile {
 		return templateDom;
 
 	}
+
+	private Document getSiteDOM(String siteFileName) throws IOException, SAXException {
+
+
+		File siteFile = new File(siteFileName);
+
+		DocumentBuilder documentBuilder = CommonXML.getDocumentBuilder();
+		Document templateDom = null;
+		templateDom = documentBuilder.parse(siteFile);
+		return templateDom;
+
+	}
 }
diff --git a/org.eclipse.wtp.releng.webupdatesite/webtools.build b/org.eclipse.wtp.releng.webupdatesite/webtools.build
deleted file mode 100644
index 226ed8f52132f0bdea64e37198a76da53ada29ea..0000000000000000000000000000000000000000
--- a/org.eclipse.wtp.releng.webupdatesite/webtools.build
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<build:Contribution xmlns:build="http://www.eclipse.org/amalgam/2008/build" xmlns:xmi="http://www.omg.org/XMI" label="WebTools" xmi:version="2.0">
-  <contacts email="david_williams@us.ibm.com" name="David Williams"/>
-  <features id="org.eclipse.wst.web_ui.feature" repo="//@repositories.0" version="3.1.0.v200905242131-7R77FSlEVw2xWKwEsJnUxocrDEY1">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.enterprise_ui.feature" repo="//@repositories.0" version="3.1.0.v200905242144-7_7EGraFQRwRZSMN-6Z-NeR7Thco">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jpt.feature" repo="//@repositories.0" version="2.2.0.v200906100220-7L7OAFFBBoPR9QNdMUt_f">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.ws.axis2tools.feature" repo="//@repositories.0" version="1.1.0.v200905242110-78-FBpDZRDE6FdPdLYYe">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jpt.eclipselink.feature" repo="//@repositories.0" version="2.2.0.v200905310000-65A7AkF77g7SGH7997">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.webpageeditor.feature" repo="//@repositories.0" version="2.2.0.v20090310-4339oB55W5K6F">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature" repo="//@repositories.0" version="2.2.0.v20090517-20-7w311A1636">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.wst.xml_ui.feature" repo="//@repositories.0" version="3.1.1.v200907161031-7H6FMXDxtkM-5RhLELH3z0Rvb_PW">
-    <category href="galileo.build#//@categories.2"/>
-    <category href="galileo.build#//@categories.1"/>
-  </features>
-  <features id="org.eclipse.wst.jsdt.feature" repo="//@repositories.0" version="1.1.1.v200906091427-77-FGCCcNBC-BgLiEWQn">
-    <category href="galileo.build#//@categories.2"/>
-    <category href="galileo.build#//@categories.1"/>
-  </features>
-  <features id="org.eclipse.wtp.capabilities" repo="//@repositories.0" version="1.0.0.v200905221827-5--AkF77g7V7ZFJ77"/>
-  <features id="org.eclipse.wst.common.fproj" repo="//@repositories.0" version="3.1.0.v200906241252-377-8s733L3H355J8A">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.wst.server_adapters.feature" repo="//@repositories.0" version="3.1.0.v200906020451-51DFAkF77g7GCNc">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.wst.xsl.feature" repo="//@repositories.0" version="1.0.0.v200905242203-7R7T8rFIhIehWg35Bsn_c1">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.common.fproj.enablement.jdt" repo="//@repositories.0" version="3.1.0.v200906241252-377-8s733L3G58469C">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.server_ui.feature" repo="//@repositories.0" version="3.1.0.v20080930-7A2FB_9xFaFovXGKcCTNM2355">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.server_adapters.feature" repo="//@repositories.0" version="3.1.0.v20090311c-20-7w311A1422c">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.server_adapters.ext.feature" repo="//@repositories.0" version="3.1.0.v20090311b-777HFDNCcNBBz-BcKW6EGF">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <features id="org.eclipse.jst.web_ui.feature" repo="//@repositories.0" version="3.1.0.v200901280155-7E77FBcDlwYa_9Vfy1i58cp-7Zfg">
-    <category href="galileo.build#//@categories.2"/>
-  </features>
-  <repositories label="Web Tools 3.1.1 maintenance" location="http://download.eclipse.org/webtools/maintenance/"/>
-</build:Contribution>
diff --git a/org.eclipse.wtp.releng.webupdatesite/wtp.sc b/org.eclipse.wtp.releng.webupdatesite/wtp.sc
deleted file mode 100644
index 8ccfb4dfc604a87282e34dd8617167f6bbda3f70..0000000000000000000000000000000000000000
--- a/org.eclipse.wtp.releng.webupdatesite/wtp.sc
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version='1.0' encoding="UTF-8"?>
-<sc:siteContribution
-    xmlns="http://www.eclipse.org/buckminster/CSpec-1.0"
-    xmlns:sc="http://www.eclipse.org/buckminster/SiteContribution-1.0"
-    updateSite="${downloads}/webtools/tempTestUpdates/site.xml"
-    projectId="wtp">
-    <sc:member
-        name="David Williams"
-        email="david_williams@us.ibm.com" />
-    <sc:cspec
-        name="org.eclipse.wtp-sc">
-        <dependencies>
-        </dependencies>
-        <groups>
-            <public
-                name="Web and Java EE Development">
-                <attribute
-                    component="org.eclipse.wst.xml_ui.feature" />
-                <attribute
-                    component="org.eclipse.wst.jsdt.feature" />    
-                <attribute
-                    component="org.eclipse.wst" />
-                <attribute
-                    component="org.eclipse.jst" />
-                <attribute
-                    component="org.eclipse.jpt.feature" />
-                <attribute
-                    component="org.eclipse.jpt.eclipselink.feature" />
-                <attribute
-                    component="org.eclipse.jst.webpageeditor.feature" />   
-                <attribute
-                    component="org.eclipse.jst.jsf.apache.trinidad.tagsupport.feature" />   
-                <attribute
-                    component="org.eclipse.jst.ws.axis2tools.feature" />   
-            </public>
-            <public
-                name="Enabling Features">
-                <attribute
-                    component="org.eclipse.wst.common_ui.feature" />
-            </public>
-            <public
-                name="Java Development">
-                <attribute
-                    component="org.eclipse.jpt.feature" />
-                <attribute
-                    component="org.eclipse.jpt.eclipselink.feature" />
-                <attribute
-                    component="org.eclipse.jst" />
-            </public>
-        </groups>
-    </sc:cspec>
-</sc:siteContribution>
\ No newline at end of file