refactored out timer, reworked tracing_templates as objects that get functionality mixed in