Transformed to a generic html template

The generic HTML template will take a generic member type, and check
it's type further during generation.

Eventually other output mechanisms besides just html will be built.