Moved langauge creation in its own factory (so parser will not need modified to add new langauges).
Makefile now puts object files in a separate directory.
Makefile includes generated files in a fairly clean way.
Makefile created obj directory if necessary.