Merge pull request #129 from hintjens/master

Problem: client generates duplicate field arguments
Problem: tracking protocol changes in clojure is too painful.
Merge pull request #130 from mknoszlig/master

Problem: tracking protocol changes in clojure is too painful.
Problem: inserting wrong values in generated class header

Solution: use class name, not class title.
Problem: Clojure generation not working properly

Solution:

- fix templating to allow inclusion of java codec
- create Java and Clojure subdirectories as needed
- add newlines at end of files where missing