Replace inheritance by delegation for gen classes

close the delegation-instead-of-inheritance refaktoring and related (maven) changes for better testing, deployment and file access
check this