Introduced a factory for codegen data containers

This enables users to extend the Codegen* classes
and add their own methods there (which then can
be accessed from the mustache templates)
Introduced a factory for codegen data containers

implementation completed
Merge pull request #340 from martoe/codegenfactory

Introduced a factory for codegen data containers