Make tracing optional

This change turns off deep tracing by default. Now when a trace is
requested we get a shallow trace by default. If a plan is executed with
tracing enabled then we get the entire plan's trace. This reduces cost
when the trace is not necessary.