I a not really sure of the point of this abstraction.  The current HEAD version of transmute uses a a duck-typing infrastructure.  The class need not *be* a transmuter (in an inheritance sense).  It is enough that they act like transmuters.  I think that this is the right way to go since each class has so many different needs and the code reuse possible is minimal.