Add some missing virtual destructors to base classes.

I started by adding virtual destructors to the following
classes:

    base::FileTracing::Provider
    base::internal::PostTaskAndReplyImpl
    base::PostTaskAndReplyWorkerPool
    base::TraceLog::EnabledStateObserver

But then that triggered a bunch of other errors in
downstream classes that are missing 'override', so I'm
updating those too.

BUG=none

Review URL: https://codereview.chromium.org/1223393002

Cr-Commit-Position: refs/heads/master@{#338509}


CrOS-Libchrome-Original-Commit: 99c5d9fb18a5f8dd987605e25859631fa0492dc1
diff --git a/base/files/file_tracing.h b/base/files/file_tracing.h
index 92324c9..d37c21d 100644
--- a/base/files/file_tracing.h
+++ b/base/files/file_tracing.h
@@ -30,6 +30,8 @@
 
   class Provider {
    public:
+    virtual ~Provider() = default;
+
     // Whether the file tracing category is currently enabled.
     virtual bool FileTracingCategoryIsEnabled() const = 0;