lots of refactors to the API- now using interfaces for the major components. No longer have TextTransformationContext, no longer need explicit base classes for anything except the Master template