First - there' s nothing it can't do. Consider at its lowest level it uses something like

html tagNamed: 'exotic'

which means you can create any kind of tag you like.

Second you have the source code - extend it. There are several extensions floating around already that support things like yahoo web kit, scriptaculous effects, and so forth.

It doesn't take you far from the html however it makes you describe the document structure, not just spew bytes. Which means the structure can be verified and guaranteed.

HTML is a tree, not a stream. I've used many "templating systems". They all suck rocks for maintainability and are terribly fragile. They also don't generally enable component reuse.