initial work on templating and signals