* Fine tune whitespace
The EEx outut now emits more human-readable and predictable formatting.
This includes proper indenting, at least for each "root" template.
* Internal whitespace control
You can now use a bang version of any nonvoid tag to emit the markup
witout the internal whitespace. This means that there will not be a
newline emitted after the opening tag and before the closing tag.
The properties were either not needed at all, or were named back when
there was only one node type. now that each node is it's own struct,
they really don't need to share any common properties.