First draft of template engine chapter

I've added myself to the table of contributors, but I have a few questions about the information we're choosing to present.
Why? If we were concerned about efficiency, why are we suddenly using this black-box parsing aid? Is there a reason why we would / wouldn't do this "by hand?" (I know that we're only going to do this once per compilation, whereas the time saved by the micro-optimizations in the generated code will be recovered over multiple uses; the reader may not have made this distinction, though.)