First pass at maven refactoring

This is the first pass at refactoring the build to maven.  I tried to keep this as clean, performing a build structure refactoring with no source changes or reformatting.