This class implements a template engine based on the concept of blocks.
The template files do not define looping logic, only variables or parameters to be replaced, to avoid using programming concepts that are not easy to understand for designers.
The class supports event driven callback functions for customizing the template engine behavior.