Grails Maven plugin refactor

This refactor contains three distinct changes:

    - Fix edge cases where transitive dependencies are not resolved correctly (in particular with the transitive dependencies of Grails plugins that have been "Mavenized" -- i.e., have POM file).
    - Changed the source/target level to 1.5 to allow the use of iterator for loops, generics, etc.
    - Modified to use GrailsLauncher instead of GrailsBuildHelper (same change as in my other pull request).

In general, there was a lot of clean up to reduce duplication and make sure that the logic in the plugin was easy to follow.  These changes were the results of various conversations I have had with Peter Ledbrook over the last few months regarding the plugin and building Grails applications exclusively using Maven.  If any of these changes need to be separated out into separate topic branches (other than the GrailsLauncher one which already is in its own branch), please let me know.