major refactor
templates/