update_engine: Enforce virtual destructors on virtual classes.

This patch enables -Wnon-virtual-dtor enforcing that virtual classes
such as interfaces have a virtual destructor. This is required by
the Google Coding Style and avoids some problems where the derived
class' destructor is not called.

BUG=None
TEST=FEATURES=test emerge-link update_engine

Change-Id: Id907e3c14923fcccc20b83bd064fa9c9c51fffb3
Reviewed-on: https://chromium-review.googlesource.com/228927
Commit-Queue: Alex Deymo <deymo@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/payload_state_interface.h b/payload_state_interface.h
index 1825a40..95344c6 100644
--- a/payload_state_interface.h
+++ b/payload_state_interface.h
@@ -18,6 +18,8 @@
 // object.
 class PayloadStateInterface {
  public:
+  virtual ~PayloadStateInterface() = default;
+
   // Sets the internal payload state based on the given Omaha response. This
   // response could be the same or different from the one for which we've stored
   // the internal state. If it's different, then this method resets all the