Mavenized Build

New branch for first attempt at mavenizing the build.