Add nil protection

This will allow an unintialized tracer object to be called and not
panic. This makes it easy to add tracer code and not worry about
whether the tracer has been allocated or not.