alter NewTraceWriter to return a pointer - go vet was complaining about passing traceWriter's mutex by value