diff --git a/.gitignore b/.gitignore
index 2db576b..e90d179 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
+.metadata
 bin/
 *~
 *.rej
diff --git a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/None.java b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/None.java
index b81a640..b18214d 100644
--- a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/None.java
+++ b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/None.java
@@ -10,17 +10,28 @@
  ******************************************************************************/
 package org.eclipse.e4.core.functionalprog.optionmonad;
 
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+
 /**
  * An Option instance that does not contain any value.
  * 
  * @param <T> The type that this Option is encapsulating.
  */
 public final class None<T> implements Option<T> {
+	private final IStatus additionalInfo;
+	
+    /**
+     * Construct a None<T>.
+     */
+    public None() { additionalInfo = Status.CANCEL_STATUS; }
  
     /**
      * Construct a None<T>.
      */
-    public None() {}
+    public None(IStatus additionalInfo) { 
+    	this.additionalInfo = Nulls.valueOrSubstitute(additionalInfo, Status.CANCEL_STATUS); 
+    }
  
 	/**
 	 * A convenience factory method meant to be imported statically and that
@@ -33,6 +44,17 @@
 	 */
 	public static <T> Option<T> none() { return new None<T>(); }
 
+	/**
+	 * A convenience factory method meant to be imported statically and that
+	 * eliminates a lot of the boilerplate that Java generics impose.
+	 * 
+	 * @param <T> The type of Option object to create.  Usually inferred 
+	 * automatically by the compiler.
+	 * 
+	 * @return a new None<T>.
+	 */
+	public static <T> Option<T> none(IStatus additionalInfo) { return new None<T>(additionalInfo); }
+
     /* (non-Javadoc)
      * @see org.eclipse.e4.core.functionalprog.optionmonad.Option#get()
      */
@@ -60,4 +82,11 @@
 	public boolean hasValue() {
 		return false;
 	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.e4.core.functionalprog.optionmonad.Option#getStatus()
+	 */
+	public IStatus getStatus() {
+		return additionalInfo;
+	}
 }
\ No newline at end of file
diff --git a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Option.java b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Option.java
index 7b5ec43..09a5175 100644
--- a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Option.java
+++ b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Option.java
@@ -9,6 +9,8 @@
  *    David Orme - initial API and implementation
  ******************************************************************************/
 package org.eclipse.e4.core.functionalprog.optionmonad;
+
+import org.eclipse.core.runtime.IStatus;
 
 /**
  * A Java implementation of the "Option Monad" design pattern.  (Note that this
@@ -64,6 +66,17 @@
      * 
      * @return true if this Option contains a value or false if it is empty.
      */
-    public boolean hasValue();
+    public boolean hasValue();
+    
+    /**
+     * Returns an IStatus providing further information on this result.  If
+     * clients do not explicitly provide an IStatus result, then Some(value) 
+     * will return Status.OK_STATUS and None will return Status.CANCEL_STATUS.
+     * Alternatively, clients can supply their own IStatus to return along with
+     * Some(value) or None.
+     * 
+     * @return IStatus additional information on this operation.
+     */
+    public IStatus getStatus();
 }
  
diff --git a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Some.java b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Some.java
index f6521d7..40eb1e6 100644
--- a/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Some.java
+++ b/bundles/org.eclipse.e4.core.functionalprog/src/org/eclipse/e4/core/functionalprog/optionmonad/Some.java
@@ -10,6 +10,9 @@
  ******************************************************************************/
 package org.eclipse.e4.core.functionalprog.optionmonad;
 
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+
 /**
  * An Option instance that contains a value.
  * 
@@ -17,6 +20,7 @@
  */
 public final class Some<T> implements Option<T> {
     private final T value;
+    private final IStatus additionalInfo;
  
     /**
      * Construct an Option with Some(value).
@@ -25,6 +29,17 @@
      */
     public Some(T value) {
         this.value = value;
+        this.additionalInfo = Status.OK_STATUS;
+    }
+ 
+    /**
+     * Construct an Option with Some(value).
+     * 
+     * @param value The value to encapsulate.
+     */
+    public Some(T value, IStatus additionalInfo) {
+        this.value = value;
+        this.additionalInfo = Nulls.valueOrSubstitute(additionalInfo, Status.OK_STATUS);
     }
  
 	/**
@@ -38,6 +53,19 @@
 	 */
 	public static <T> Option<T> some(T value) { return new Some<T>(value); }
 	
+	/**
+	 * A convenience factory method meant to be imported statically and that
+	 * eliminates a lot of the boilerplate that Java generics impose.
+	 * 
+	 * @param <T> The type of Option object to create.  Usually inferred 
+	 * automatically by the compiler.
+	 * @param additionalInfo An IStatus providing more information on this operation.
+	 * 
+	 * @return a new Some<T> containing the specified value.
+	 */
+	public static <T> Option<T> some(T value, IStatus additionalInfo) { return new Some<T>(value, additionalInfo); }
+
+	
     /* (non-Javadoc)
      * @see org.eclipse.e4.core.functionalprog.optionmonad.Option#get()
      */
@@ -65,5 +93,12 @@
 	public boolean hasValue() {
 		return true;
 	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.e4.core.functionalprog.optionmonad.Option#getStatus()
+	 */
+	public IStatus getStatus() {
+		return additionalInfo;
+	}
 }
  
diff --git a/org.eclipse.e4.utils.releng/.project b/org.eclipse.e4.utils.releng/.project
new file mode 100644
index 0000000..73c5280
--- /dev/null
+++ b/org.eclipse.e4.utils.releng/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.e4.utils.releng</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/org.eclipse.e4.utils.releng/pom.xml b/org.eclipse.e4.utils.releng/pom.xml
new file mode 100644
index 0000000..af6de4e
--- /dev/null
+++ b/org.eclipse.e4.utils.releng/pom.xml
@@ -0,0 +1,399 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
+	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+	<modelVersion>4.0.0</modelVersion>
+	<artifactId>com.coconut_palm_software.xscalawt.lib</artifactId>
+	<groupId>com.coconut_palm_software</groupId>
+	<version>0.0.1-SNAPSHOT</version>
+	<packaging>pom</packaging>
+
+	<properties>
+		<scala.version>2.9.0</scala.version>
+		<tycho-version>0.11.0</tycho-version>
+		<maven-scala-plugin-version>2.14</maven-scala-plugin-version>
+		<encoding>UTF-8</encoding>
+	</properties>
+
+	<prerequisites>
+		<maven>3.0</maven>
+	</prerequisites>
+
+	<modules>
+		<!-- Use this if you want a local target platform rather than the one in the cloud
+		<module>../xscalawt.targetplatform</module>
+		 -->
+		<module>../com.coconut_palm_software.xscalawt</module>
+		<module>../com.coconut_palm_software.xscalawt.feature</module>
+		<module>../com.coconut_palm_software.xscalawt.site</module>
+	</modules>
+
+	<repositories>
+		<repository>
+			<id>helios</id>
+			<name>Eclipse Helios p2 repository</name>
+			<layout>p2</layout>
+			<url>http://download.eclipse.org/releases/helios/</url>
+		</repository>
+
+		<repository>
+			<id>scala-tools.release</id>
+			<name>Scala Tools maven release repository</name>
+			<url>http://scala-tools.org/repo-releases</url>
+			<snapshots>
+				<enabled>false</enabled>
+			</snapshots>
+		</repository>
+		<repository>
+			<id>scala-tools.snapshot</id>
+			<name>Scala Tools maven snapshot repository</name>
+			<url>http://scala-tools.org/repo-snapshots</url>
+			<snapshots>
+				<updatePolicy>daily</updatePolicy>
+			</snapshots>
+		</repository>
+	</repositories>
+
+	<pluginRepositories>
+		<pluginRepository>
+			<id>org.sonatype.tycho</id>
+			<name>Tycho snapshot repository</name>
+			<url>https://repository.sonatype.org/content/repositories/snapshots</url>
+			<snapshots>
+				<updatePolicy>daily</updatePolicy>
+			</snapshots>
+		</pluginRepository>
+		<pluginRepository>
+			<id>scala-tools.release</id>
+			<name>Scala Tools maven release repository</name>
+			<url>http://scala-tools.org/repo-releases</url>
+			<snapshots>
+				<enabled>false</enabled>
+			</snapshots>
+		</pluginRepository>
+		<pluginRepository>
+			<id>scala-tools.snapshot</id>
+			<name>Scala Tools maven snapshot repository</name>
+			<url>http://scala-tools.org/repo-snapshots</url>
+		</pluginRepository>
+	</pluginRepositories>
+	
+	<profiles>
+		<profile>
+			<id>scala-2.8.0</id>
+			<activation>
+				<property>
+					<name>scala.version</name>
+					<value>2.8.0</value>
+				</property>
+			</activation>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.0.final</id>
+					<name>Scala Refactoring Scala 2.8.0.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.0.final</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.0.final</id>
+					<name>Scalariform Scala 2.8.0.final p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.0.final</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-2.8.0.final</id>
+					<name>Scala Toolchain 2.8.0.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-2.8.0.final</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>scala-2.8.1</id>
+			<activation>
+				<property>
+					<name>scala.version</name>
+					<value>2.8.1</value>
+				</property>
+			</activation>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.1.final</id>
+					<name>Scala Refactoring Scala 2.8.1.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.1.final</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.1.final</id>
+					<name>Scalariform Scala 2.8.1.final p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.1.final</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-2.8.1.final</id>
+					<name>Scala Toolchain 2.8.1.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-2.8.1.final</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>scala-2.8.1.RC2</id>
+			<activation>
+				<property>
+					<name>scala.version</name>
+					<value>2.8.1.RC2</value>
+				</property>
+			</activation>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.1.RC2</id>
+					<name>Scala Refactoring Scala 2.8.1.RC2 p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.1.RC2</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.1.RC2</id>
+					<name>Scalariform Scala 2.8.1.RC2 p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.1.RC2</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-2.8.1.RC2</id>
+					<name>Scala Toolchain 2.8.1.RC2 p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-2.8.1.RC2</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>scala-2.8.0-maintenance</id>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.0.final</id>
+					<name>Scala Refactoring Scala 2.8.0.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.0.final</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.0.final</id>
+					<name>Scalariform Scala 2.8.0.final p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.0.final</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-2.8.0.final-maintenance</id>
+					<name>Scala Toolchain 2.8.0.final-maintenance p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-2.8.0.final-maintenance</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>scala-2.8.x</id>
+			<activation>
+				<property>
+					<name>scala.version</name>
+					<value>2.8.1-SNAPSHOT</value>
+				</property>
+			</activation>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.1.alpha</id>
+					<name>Scala Refactoring Scala 2.8.1.alpha p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.1.alpha</url>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.1.alpha</id>
+					<name>Scalariform Scala 2.8.1.alpha p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.1.alpha</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-2.8.1.alpha</id>
+					<name>Scala Toolchain 2.8.1.alpha p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-2.8.1.alpha</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>scala-trunk</id>
+			<activation>
+				<property>
+					<name>scala.version</name>
+					<value>2.9.0-SNAPSHOT</value>
+				</property>
+			</activation>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-trunk</id>
+					<name>Scala Refactoring Scala trunk p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-trunk</url>
+				</repository>
+				<repository>
+					<id>scalariform-trunk</id>
+					<name>Scalariform Scala trunk p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-trunk</url>
+				</repository>
+				<repository>
+					<id>scala-toolchain-trunk</id>
+					<name>Scala Toolchain trunk p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-eclipse-toolchain-osgi-trunk</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>local-scala-2.8.0</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.library</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.compiler</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+			</dependencies>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.0.final</id>
+					<name>Scala Refactoring Scala 2.8.0.final p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.0.final</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.0.final</id>
+					<name>Scalariform Scala 2.8.0.final p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.0.final</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>local-scala-2.8.1</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.library</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.compiler</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+			</dependencies>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-2.8.1.alpha</id>
+					<name>Scala Refactoring Scala 2.8.1.alpha p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-2.8.1.alpha</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-2.8.1.alpha</id>
+					<name>Scalariform Scala 2.8.1.alpha p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-2.8.1.alpha</url>
+				</repository>
+			</repositories>
+		</profile>
+		<profile>
+			<id>local-scala-trunk</id>
+			<dependencies>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.library</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+				<dependency>
+					<groupId>org.scala-ide</groupId>
+					<artifactId>org.scala-ide.scala.compiler</artifactId>
+					<version>${scala.version}</version>
+				</dependency>
+			</dependencies>
+			<repositories>
+				<repository>
+					<id>scala-refactoring-trunk</id>
+					<name>Scala Refactoring Scala trunk p2 repository</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scala-refactoring-trunk</url>
+					<snapshots>
+						<enabled>false</enabled>
+					</snapshots>
+				</repository>
+				<repository>
+					<id>scalariform-trunk</id>
+					<name>Scalariform Scala trunk p2 repo</name>
+					<layout>p2</layout>
+					<url>http://download.scala-ide.org/scalariform-trunk</url>
+				</repository>
+			</repositories>
+		</profile>
+	</profiles>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.sonatype.tycho</groupId>
+				<artifactId>tycho-maven-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<extensions>true</extensions>
+			</plugin>
+
+			<plugin>
+				<groupId>org.sonatype.tycho</groupId>
+				<artifactId>target-platform-configuration</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<resolver>p2</resolver>
+					<environments>
+						<environment>
+							<os>linux</os>
+							<ws>gtk</ws>
+							<arch>x86</arch>
+						</environment>
+						<environment>
+							<os>win32</os>
+							<ws>win32</ws>
+							<arch>x86</arch>
+						</environment>
+						<!-- For some reason, adding this breaks the build?
+							<environment> <os>macosx</os> <ws>carbon</ws> <arch>x86</arch>
+							</environment> <environment> <os>macosx</os> <ws>cocoa</ws>
+							<arch>x86_64</arch> </environment>
+						-->
+					</environments>
+				</configuration>
+			</plugin>
+
+		</plugins>
+	</build>
+
+</project>
