Templating by passed-in functions

This makes constructing an output from a base structure much less
cumbersome.
More explicit self-closing tags, inline attr style

Not as in more swearing; as in more obvious what's happening. Passing a
truthy second argument to the tag constructor to indicate this was
pretty hacky, took up that argument slot and wasn't readable.

Replaced the second argument with a set of attributes to attach
immediately to that tag. Makes some code lots cleaner.
Update readme

Explains data-driven render feature.
Merge branch 'templating'