bug duplicate superclass
misc
refactoring
add support for jinja2 template engine