Multithreaded Tracer Service

Modify the Tracer Service to work with the multithreaded
Framework. The depth data member is removed to avoid data
races. The ModuleCallingContext is used instead to
determine indentation. Use MessageLogger
LogAbsolute instead of printing directly to cout
to better serialize message printing. Also reformatted
message style so the messages have a more consistent
style and improved alignment to be more readable.
Modified unit tests that used the Tracer to work
with the modifications.