Disable fwd decl dependency analysis from TMetaUtil; pulls in the world.
Even fwd decl outside TU context. Visit tmplt arg types.
Fix fatal spelling error.
Automatically stream to parent if not skipped.
No need for a sub-stream; we reset m_SkipFlag.
Delay template parameters until its dependencies have been visited.
Let decls print their decl context.
extern "C" is printed by the decl itself.
Actually print the enclosing DeclContexts.
Write to Out() not Log()!
Remove skip counting; centralize skip logging.
Write declcontext for each visit; delay template <...>.

Writing the template parameters might cause visitation of other decls which need to be in their respective
namespaces. Thus we need to buffer / delay the whole template decl, including its enclosing namespaces.
As we forward e.g. from ClassTemplateInstanceDecl() to RedeclarableTemplateDecl() we need to
selectively write the enclosing namespaces, no just for any Visit(Decl*). Make sure that a template pattern
is not again writing its enclosing scopes - it is just called from its VisitRedeclarableTemplateDecl().
Decls as template params need to be buffered to their stream.
Declare outermost namespace first.