diff --git a/nant.build b/nant.build
index af9ca37..2340914 100644
--- a/nant.build
+++ b/nant.build
@@ -16,96 +16,96 @@
     limitations under the License.
 -->
 <project name="Apache.NMS.MSMQ" default="default" xmlns="http://nant.sourceforge.net/release/0.85/nant.xsd">
-	<!-- ============================================================================================ -->
-	<!--      I N I T I A L I Z A T I O N                                                             -->
-	<!-- ============================================================================================ -->
-	<property name="basedir" value="${project::get-base-directory()}" />
-	<property name="project.name" value="Apache.NMS.MSMQ" />
-	<property name="project.group" value="org.apache.activemq" />
-	<property name="project.version" value="1.2.0" unless="${property::exists('project.version')}" />
-	<property name="project.release.type" value="SNAPSHOT" unless="${property::exists('project.release.type')}" />
-	<property name="project.short_description" value="Apache NMS for MSMQ Class Library" />
-	<property name="project.description" value="Apache NMS for MSMQ Class Library (.Net Messaging Library Implementation): An implementation of the NMS API for MSMQ" />
+    <!-- ============================================================================================ -->
+    <!--      I N I T I A L I Z A T I O N                                                             -->
+    <!-- ============================================================================================ -->
+    <property name="basedir" value="${project::get-base-directory()}" />
+    <property name="project.name" value="Apache.NMS.MSMQ" />
+    <property name="project.group" value="org.apache.activemq" />
+    <property name="project.version" value="1.2.0" unless="${property::exists('project.version')}" />
+    <property name="project.release.type" value="RC" unless="${property::exists('project.release.type')}" />
+    <property name="project.short_description" value="Apache NMS for MSMQ Class Library" />
+    <property name="project.description" value="Apache NMS for MSMQ Class Library (.Net Messaging Library Implementation): An implementation of the NMS API for MSMQ" />
 
-	<!-- Repository organized as: organization/module/version/plaform/artifact, platform might be something like 'all' or 'net-2.0/release' -->
-	<property name="nunit.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.dll" dynamic="true" />
-	<property name="nunit.extensions.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.extensions.dll" dynamic="true" />
-	<property name="Apache.NMS.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.dll" dynamic="true" />
-	<property name="Apache.NMS.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.pdb" dynamic="true" />
-	<property name="Apache.NMS.Test.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}//Apache.NMS.Test.dll" dynamic="true" />
-	<property name="Apache.NMS.Test.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.Test.pdb" dynamic="true" />
-	<property name="NUnit.Projectfile" value="Apache.NMS.MSMQ.Test.nunit" />
+    <!-- Repository organized as: organization/module/version/plaform/artifact, platform might be something like 'all' or 'net-2.0/release' -->
+    <property name="nunit.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.dll" dynamic="true" />
+    <property name="nunit.extensions.dll" value="${basedir}/lib/NUnit/${current.build.framework}/nunit.framework.extensions.dll" dynamic="true" />
+    <property name="Apache.NMS.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.dll" dynamic="true" />
+    <property name="Apache.NMS.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.pdb" dynamic="true" />
+    <property name="Apache.NMS.Test.dll" value="${basedir}/lib/Apache.NMS/${current.build.framework}//Apache.NMS.Test.dll" dynamic="true" />
+    <property name="Apache.NMS.Test.pdb" value="${basedir}/lib/Apache.NMS/${current.build.framework}/Apache.NMS.Test.pdb" dynamic="true" />
+    <property name="NUnit.Projectfile" value="Apache.NMS.MSMQ.Test.nunit" />
 
-	<!-- Skip certain frameworks, since MSMQ is not supported on those platforms. -->
-	<property name="build.netcf-2.0.skip" value="true" />
-	<property name="build.mono-2.0.skip" value="true" />
+    <!-- Skip certain frameworks, since MSMQ is not supported on those platforms. -->
+    <property name="build.netcf-2.0.skip" value="true" />
+    <property name="build.mono-2.0.skip" value="true" />
 
-	<target name="vendor-init" description="Initializes Vendor library from local repository.">
-		<!--
-		   Vendor specific info.  The prefix of 'vendor.apache.org' is taken from the property
-		   'vendor.fileset.names'.  This comma-delimited list is iterated, and properties with
-		   well-known suffixes are used to access and copy down vendor file dependencies.
-		-->
-		<property name="vendor.fileset.names" value="vendor.apache.org,vendor.nunit.org" />
+    <target name="vendor-init" description="Initializes Vendor library from local repository.">
+        <!--
+           Vendor specific info.  The prefix of 'vendor.apache.org' is taken from the property
+           'vendor.fileset.names'.  This comma-delimited list is iterated, and properties with
+           well-known suffixes are used to access and copy down vendor file dependencies.
+        -->
+        <property name="vendor.fileset.names" value="vendor.apache.org,vendor.nunit.org" />
 
-		<!-- Property grouping for 'vendor.apache.org' -->
-		<property name="vendor.apache.org.name" value="Apache.NMS" />
-		<property name="vendor.apache.org.group" value="org.apache.activemq" />
-		<property name="vendor.apache.org.version" value="1.2.0" />
-		<property name="vendor.apache.org.filenames" value="Apache.NMS.dll,Apache.NMS.pdb,Apache.NMS.Test.dll,Apache.NMS.Test.pdb" />
+        <!-- Property grouping for 'vendor.apache.org' -->
+        <property name="vendor.apache.org.name" value="Apache.NMS" />
+        <property name="vendor.apache.org.group" value="org.apache.activemq" />
+        <property name="vendor.apache.org.version" value="1.2.0" />
+        <property name="vendor.apache.org.filenames" value="Apache.NMS.dll,Apache.NMS.pdb,Apache.NMS.Test.dll,Apache.NMS.Test.pdb" />
 
-		<!-- Property grouping for 'vendor.nunit.org' -->
-		<property name="vendor.nunit.org.name" value="NUnit" />
-		<property name="vendor.nunit.org.group" value="org.nunit" />
-		<property name="vendor.nunit.org.version" value="2.4.8" />
-		<property name="vendor.nunit.org.filenames" value="nunit.framework.dll,nunit.framework.extensions.dll" />
-	</target>
+        <!-- Property grouping for 'vendor.nunit.org' -->
+        <property name="vendor.nunit.org.name" value="NUnit" />
+        <property name="vendor.nunit.org.group" value="org.nunit" />
+        <property name="vendor.nunit.org.version" value="2.4.8" />
+        <property name="vendor.nunit.org.filenames" value="nunit.framework.dll,nunit.framework.extensions.dll" />
+    </target>
 
-	<target name="dependency-init" description="Initializes build dependencies">
-		<assemblyfileset failonempty="true" id="dependencies">
-			<include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.Messaging.dll" />
-			<include name="${Apache.NMS.dll}" />
-		</assemblyfileset>
+    <target name="dependency-init" description="Initializes build dependencies">
+        <assemblyfileset failonempty="true" id="dependencies">
+            <include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.Messaging.dll" />
+            <include name="${Apache.NMS.dll}" />
+        </assemblyfileset>
 
-		<assemblyfileset failonempty="true" id="test.dependencies">
-			<include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
-			<include name="${current.build.framework.assembly.dir}/System.Messaging.dll" />
-			<include name="${Apache.NMS.dll}" />
-			<include name="${Apache.NMS.Test.dll}" />
-			<include name="${build.bin.dir}/${project.name}.dll" />
-			<include name="${nunit.dll}" />
-			<include name="${nunit.extensions.dll}" />
-		</assemblyfileset>
+        <assemblyfileset failonempty="true" id="test.dependencies">
+            <include name="${current.build.framework.assembly.dir}/mscorlib.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.Xml.dll" />
+            <include name="${current.build.framework.assembly.dir}/System.Messaging.dll" />
+            <include name="${Apache.NMS.dll}" />
+            <include name="${Apache.NMS.Test.dll}" />
+            <include name="${build.bin.dir}/${project.name}.dll" />
+            <include name="${nunit.dll}" />
+            <include name="${nunit.extensions.dll}" />
+        </assemblyfileset>
 
-		<fileset id="content.filenames">
-			<include name="LICENSE.txt" />
-			<include name="NOTICE.txt" />
-			<include name="nmsprovider-*.config" />
-			<include name="${Apache.NMS.dll}" />
-			<include name="${Apache.NMS.pdb}" />
-			<include name="${Apache.NMS.Test.dll}" />
-			<include name="${Apache.NMS.Test.pdb}" />
-			<include name="${nunit.dll}" />
-			<include name="${nunit.extensions.dll}" />
-			<include name="${NUnit.Projectfile}" />
-		</fileset>
+        <fileset id="content.filenames">
+            <include name="LICENSE.txt" />
+            <include name="NOTICE.txt" />
+            <include name="nmsprovider-*.config" />
+            <include name="${Apache.NMS.dll}" />
+            <include name="${Apache.NMS.pdb}" />
+            <include name="${Apache.NMS.Test.dll}" />
+            <include name="${Apache.NMS.Test.pdb}" />
+            <include name="${nunit.dll}" />
+            <include name="${nunit.extensions.dll}" />
+            <include name="${NUnit.Projectfile}" />
+        </fileset>
 
-		<fileset id="install.filenames">
-			<include name="LICENSE.txt" />
-			<include name="NOTICE.txt" />
-			<include name="${build.bin.dir}/${project.name}.dll" />
-			<include name="${build.bin.dir}/${project.name}.pdb" />
-		</fileset>
+        <fileset id="install.filenames">
+            <include name="LICENSE.txt" />
+            <include name="NOTICE.txt" />
+            <include name="${build.bin.dir}/${project.name}.dll" />
+            <include name="${build.bin.dir}/${project.name}.pdb" />
+        </fileset>
 
-	</target>
+    </target>
 
-	<target name="default" depends="install-all" />
+    <target name="default" depends="install-all" />
 
-	<!-- Load the common target definitions  -->
-	<include buildfile="${basedir}/nant-common.xml" />
+    <!-- Load the common target definitions  -->
+    <include buildfile="${basedir}/nant-common.xml" />
 </project>
