templating system almost there