Index: /trunk/gli/src/org/greenstone/gatherer/util/ArrayTools.java
===================================================================
--- /trunk/gli/src/org/greenstone/gatherer/util/ArrayTools.java	(revision 7984)
+++ /trunk/gli/src/org/greenstone/gatherer/util/ArrayTools.java	(revision 7985)
@@ -14,5 +14,4 @@
 import javax.swing.filechooser.*;
 import org.greenstone.gatherer.file.FileNode;
-import org.greenstone.gatherer.msm.Metadata;
 import org.w3c.dom.*;
 
@@ -176,60 +175,4 @@
 	}
 	return false;
-    }
-    /** Remove the first element from an array, and return the remaining 'tail'.
-     * @param a A <strong>FileNode[]</strong>.
-     * @return The same <strong>FileNode[]</strong> sans its head element.
-     */
-    /* static final private FileNode[] tail(FileNode a[]) {
-	if(a.length == 1) {
-	    return null;
-	}
-	FileNode b[] = new FileNode[a.length - 1];
-	System.arraycopy(a, 1, b, 0, b.length);
-	return b;
-	} */
-	 
-    /** Append a Metadata object onto an array of Metadata objects. */
-    static public Metadata[] add(Metadata[] a, Metadata b) {
-	Metadata[] c = null;
-	if(a != null && b != null) {
-	    c = new Metadata[a.length + 1];
-	    System.arraycopy(a, 0, c, 0, a.length);
-	    c[c.length - 1] = b;
-	}
-	else if(a == null && b != null) {
-	    c = new Metadata[1];
-	    c[0] = b;
-	}
-	else if(a != null && b == null) {
-	    c = a;
-	}
-	return c;
-    }
-    /** Append a Metadata object array onto an array of Metadata objects. */
-    static public Metadata[] add(Metadata[] a, Metadata[] b) {
-	Metadata[] c = null;
-	if(a != null && b != null) {
-	    c = new Metadata[a.length + b.length];
-	    System.arraycopy(a, 0, c, 0, a.length);
-	    System.arraycopy(b, 0, c, a.length, b.length);
-	}
-	else if(a == null && b != null) {
-	    c = b;
-	}
-	else if(a != null && b == null) {
-	    c = a;
-	}
-	return c;
-    }
-    /** Remove the Metadata object at the given index form the specified Metadata object array. */
-    static public Metadata[] remove(Metadata[] a, int index) {
-	Metadata[] c = null;
-	if(a != null) {
-	    c = new Metadata[a.length - 1];
-	    System.arraycopy(a, 0, c, 0, index);
-	    System.arraycopy(a, index + 1, c, index, c.length - index);
-	}
-	return c;
     }
 
@@ -393,19 +336,4 @@
     }
 
-    /** Remove the file at the given index from the array of files. */
-    static public File[] remove(File[] files, int index) {
-	if(files.length == 1) {
-	    return new File[0];
-	}
-	File[] temp = new File[files.length - 1];
-	if(index > 0) {
-	    System.arraycopy(files, 0, temp, 0, index);
-	}
-	if(index < files.length - 1) {
-	    System.arraycopy(files, index + 1, temp, index, files.length - 1 - index);
-	}
-	return temp;
-    }
-
 
     /** Sorts an array of files, putting non-files first. Case insensitive.
Index: /trunk/gli/src/org/greenstone/gatherer/util/HashMap3D.java
===================================================================
--- /trunk/gli/src/org/greenstone/gatherer/util/HashMap3D.java	(revision 7984)
+++ /trunk/gli/src/org/greenstone/gatherer/util/HashMap3D.java	(revision 7985)
@@ -33,5 +33,4 @@
 import java.util.HashMap;
 import java.util.Iterator;
-import org.greenstone.gatherer.msm.Metadata;
 
 /** Provides a HashMap implementation that indexes by two keys. Perfect for the storage of metadata references based on their metadata element and assigned value. 
@@ -55,5 +54,5 @@
 	super();
     }
-    /** Constructor with a specific initial capacity, as we should already have a good idea based on the number of Metadata Elements.
+    /** Constructor with a specific initial capacity.
      * @param capacity The initial capacity as an <i>int</i>.
      */
@@ -120,31 +119,5 @@
 	return result;
     }
-    /** -SPECIAL - Attempts to retrieve a previous instance of metadata with the same parameters as the given one. If such a metadata is found, it is returned, otherwise the given metadata is added then returned as being the first unique instance.
-     * @param metadata The <strong>Metadata</strong> for whom we are trying to find the first unique instance.
-     * @return The first unique instance of the target <strong>Metadata</strong> which may in fact be the same metadata given as a paramater.
-     */
-    /* private Metadata locate(Metadata metadata) {
-	Metadata result = null;
-	if(metadata != null) {
-	    // Locate the appropriate value->metadata hashmap.
-	    String element_name = metadata.getElement().toString();
-	    HashMap inner_mapping = (HashMap) get(element_name);
-	    if(inner_mapping == null) {
-		inner_mapping = new HashMap(4); // Small initial capacity.
-		put(element_name, inner_mapping);
-	    }
-	    element_name = null;
-	    // Locate the appropriate metadata
-	    String value_name = metadata.getValueNode().getFullPath(false);
-	    result = (Metadata) inner_mapping.get(value_name);
-	    if(result == null) {
-		result = metadata;
-		inner_mapping.put(value_name, metadata);
-	    }
-	    value_name = null;
-	    inner_mapping = null;
-	}
-	return result;
-	} */
+
     /** Put an entry into this three dimensional hash mapping.
      * @param key_one The first key, to store this value under, as an <strong>Object</strong>.
