Fixing #1 - replacing freemarker with velocity templates. The template API is uglier and the resulting generated files have a lot more unnecessary whitespace (although an autoformat does fix that nicely) but fewer dependencies are a good thing