added minimal templating system