Process subnodes too.
Random
Can now include non-typed text in typed elements.
Pulled out templates.