Traces are now transformed by calling a polymorphic function on them, instead of calling a hard-coded function