Provided a trace listener abstraction so that clients of the library can route trace messages to wherever they want.