Give (objc, objv) their own ride from enter to leave traces.
Revise GetCommandSource() to return a normal Tcl_Obj value.
Revised GetCommandSource() can (and thus should) return a normal zero
refcount value.
Arrange for both execution traces and [info frame] to get their pre-subst
source strings from a common routine, with care taken to reduce copying
by that routine.
merge trunk
Use a new flag value TCL_EVAL_SOURCE_IN_FRAME passed in by callers to
determine whether the pre-subst source information in a CmdFrame is to
be used.  This takes the place of numLevels cross checking, so that field
is removed.  Routines are consolidated as well.
Only schedule leave traces if enter traces complete successfully.
This avoids a memleak, and opens a data slot, so we can pass objc, objv
without the need to copy them into a list value.
Consolidate some helper routines.
Arrange for both execution traces and [info frame] to get their pre-subst
source strings from a common routine.