Refactor common code into a generator

Each of these modules had the exact same code with one string changed.  This moves all of this code into a common generator, then refactors all of the transforms modules to use it.
I don't think that's the case here.  In this, `Model` reference the class that's created on line 23.  It exists only in this scope.  The name of the models that were used throughout this module appear to have been irrelevant as they were all returned via `{{ module }}.Model`.