Master templates provide a way for you to organize complex code generation processes from a single template. Just as subroutines in a computer program let you call bits of logic from a main program flow, master templates let you call bits of code generation logic from a main template.
To use a Master templates, you must first register the master template in the parent template. You can then merge properties from the master template into the parent template, copy properties from the parent template to the sub-template, set properties in the master template, and render the master template.
Here's a video tutorial for more on Master Templates!