Updating implementation to be MUCH cleaner, including use
of tranformer interface