dynamic templating for todos