Mass re-factoring in support of a new DSL. Noteworthy:

* upgraded Scala to 2.9.2 with incremental compilation
* uses Specs2
* uses Kiama for pretty printing
* takes on a functional dsl
* Xpp3Dom configuration elements are modelled as Scala Xml elements
* improved gav declarations using an sbt like syntax
* used type classes to factor out the concern of pretty printing model objects
* minimised compilation of pom.scala files in order to perform well - only changes are compiled

Thanks in particular to @richdougherty and @jsuereth for their reviews.