diff --git a/.gitignore b/.gitignore
index 28fcc1aa22..858ddb891a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,5 +27,6 @@ dwsync.xml
publish
.idea
-# files
+# build script local files
build/buildinfo.properties
+build/config/buildinfo.properties
diff --git a/build/build.xml b/build/build.xml
index 7d394fd977..015ba1b6f5 100644
--- a/build/build.xml
+++ b/build/build.xml
@@ -1,103 +1,360 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
- Current build number: ${build.number}
-
-
-
-
+
-
-
-
+ *************************************************
+ * BASE TARGETS *
+ *************************************************
+ -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ *************************************************
+ * FUNCTION TARGETS *
+ *************************************************
+ -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Creating build ${build.number}
+
+
+
+
+ Current build number: ${build.number}
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
-
-
-
+
+
+
@@ -107,14 +364,8 @@
-
-
-
+
@@ -123,74 +374,8 @@
-
-
- Commenting out console.log lines
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -206,225 +391,254 @@
-
- About to rename scripts-all to scripts
-
-
-
-
-
-
-
-
-
-
-
-
+
+
- -->
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- kill off those versioning flags: ?v=2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+ kill off those versioning flags: ?v=2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build/build.properties b/build/config/build.properties
similarity index 100%
rename from build/build.properties
rename to build/config/build.properties
diff --git a/build/config/default.properties b/build/config/default.properties
new file mode 100644
index 0000000000..d5a0440bd4
--- /dev/null
+++ b/build/config/default.properties
@@ -0,0 +1,74 @@
+#
+# Default Build Settings
+# you can override these settings on a project basis in a project.properties file
+# so probably best not to touch these as they could be overwritten in later versions!
+#
+
+
+#
+# Directory Paths
+#
+dir.publish = publish
+dir.build = build
+dir.build.tools = ${dir.build}/tools
+dir.test = test
+dir.demo = demo
+dir.js = js
+# scripts in the lib direcotry will only be minified, not concatenated together
+dir.js.libs = ${dir.js}/libs
+dir.js.mylibs = ${dir.js}/mylibs
+dir.css = css
+dir.images = images
+
+
+#
+# HTML, PHP, etc files to clean and update script/css references
+#
+file.pages.default.include = index.html, 404.html
+
+# You will need to include the property file.pages.include in your project.properties file
+# and add any extra pages you want to be updated by the scripts in a comma separated list
+
+
+
+#
+# Files not to be copied over by the script to the publish directory
+#
+file.default.exclude = .gitignore, .project, .settings, README.markdown, README.md, **/.git/**, **/.svn/**, **/${dir.build}/**, **/${dir.test}/**, **/${dir.demo}/**
+
+# Declare the file.exclude property in your project.properties file if you want to exclude files / folders you have added
+# Note: you cannot decalre an empty file.exclude property
+
+
+#
+# Default Stylesheet
+#
+file.default.stylesheets = style.css
+
+#
+# Script Optimisation
+#
+# If set, concat libraries with main scripts file, producing single script file
+build.concat.scripts = true
+# If set, delete unoptimized files
+build.delete.unoptimized = true
+
+
+#
+# Image Optimisation
+#
+images.strip.metadata = false
+# Seting this to true will strip the metadata from all jpeg files.
+# YOU SHOULD ONLY DO THIS IF YOU OWN THE COPYRIGHT TO ALL THE IMAGES IN THE BUILD
+
+
+# Build Info
+build.version.info = buildinfo.properties
+build.scripts.dir = ${dir.build}/build-scripts
+
+# Tools
+tool.yuicompressor = yuicompressor-2.4.2.jar
+tool.htmlcompressor = htmlcompressor-0.9.3.jar
+
+
+
diff --git a/build/config/project.properties b/build/config/project.properties
new file mode 100644
index 0000000000..169fb4a296
--- /dev/null
+++ b/build/config/project.properties
@@ -0,0 +1,44 @@
+# project.properties file defines overrides for default.properties
+# Explaination: This file should be created by each user as and when he or she needs to override particular values.
+# Consequently, it should not be placed under version control.
+
+# Directory Structure
+#
+# Override any directory paths specific to this project
+#
+# dir.publish
+# dir.js
+# dir.js.libs
+# dir.js.mylibs
+# dir.css
+# dir.images
+
+
+# Stylesheets
+#
+# Note: Stylesheets will be concatonated in the order they are listed in the file.stylesheets property (i.e. the last
+# file listed will be at the end of the concatonated file), so it probably makes sense to have the main style.css file
+# as the last entry
+# Example:
+# file.stylesheets = css1.css, css2.css, style.css
+#
+file.stylesheets =
+
+
+# Web Pages
+#
+# These are the pages (files) that will be served to users (.html, .php, .asp, etc). Files in this property will
+# be minified / optimised and have any stylesheet or javascript references updated to the minified examples
+#
+# The paths need to be relative
+#
+# Files can be added in a comma separated form
+file.pages =
+
+
+
+# Excluded files and dirs
+#
+# Add any files or directories you add to the project and do not want to be copied to the publish directory as a
+# comma separated list
+file.exclude =
\ No newline at end of file
diff --git a/build/default.properties b/build/default.properties
deleted file mode 100644
index c742611fb9..0000000000
--- a/build/default.properties
+++ /dev/null
@@ -1,52 +0,0 @@
-# Build options ---------------------------------
-# Customize these to fit your needs
-
-# If set, concat libraries with main scripts file, producing single script file
-build.concat.scripts = true
-# If set, delete unoptimized files
-build.delete.unoptimized = true
-
-
-# Exclude file filter for publishing (can't be empty)
-# For example: ......
-file.exclude = nonexistentfile
-
-
-
-
-# Project structure -----------------------------
-
-# Directory names
-dir.publish = publish
-dir.build = build
-dir.tools = ${dir.build}/tools
-dir.test = test
-dir.demo = demo
-dir.js = js
-# Main JS script folder (Will be concatenated and minified)
-dir.js.main = ${dir.js}
-# JS libraries folder (Will be concatenated and minified)
-dir.js.mylibs = ${dir.js}/mylibs
-# Folder that should be only minified, not concatenated together
-dir.js.libs = ${dir.js}/libs
-dir.css = css
-dir.images = images
-
-# Files
-# all the html/php whatever that the build script will be mucking with.
-# For example: ......
-file.index = index.html
-
-
-
-
-
-# Hardcore build options... --------------------
-
-# Build Versioning
-build.info = buildinfo.properties
-
-# Tools
-tool.yuicompressor = yuicompressor-2.4.2.jar
-
-
diff --git a/build/tools/ant-contrib-1.0b3.jar b/build/tools/ant-contrib-1.0b3.jar
new file mode 100644
index 0000000000..062537661a
Binary files /dev/null and b/build/tools/ant-contrib-1.0b3.jar differ
diff --git a/index.html b/index.html
index f420350345..f3aac754d0 100644
--- a/index.html
+++ b/index.html
@@ -1,5 +1,4 @@
-