Introduced a separate layer with so called "template models" for
generating PB source code.