Add & fix SQL tracing

- #3147
This is an oddity. The base class has this Trace property but we actually don't want to change it (via override) as we want messages from the base class to be from *its* trace source, so it's clear in trace logs who said what. The derived types (in this case the SqlMessageBus) want traces to appear from themselves so they create their own TraceSource.