T4 Factories uses T4toolbox to automatically generate the source code for factory implementations and even contracts (if they don't exist already), based on a concrete class and a base interface.  It allows easier use of the factory pattern for easier unit testing and refactoring.