Implement clang-tidy fixes

clang-tidy allows the CI robot to check many things via static analysis.

All changes here were made by the clang-tidy robot, and include a number
of modernization fixes.  updating the tidy file will be done at a later
date.

Signed-off-by: Ed Tanous <etanous@nvidia.com>
Change-Id: I98cc4d600a3c589675507958f6d2350b2141216b
diff --git a/errors/exception.hpp b/errors/exception.hpp
index 889b98a..ddc3804 100644
--- a/errors/exception.hpp
+++ b/errors/exception.hpp
@@ -9,7 +9,7 @@
     explicit SensorBuildException(const std::string& message) : message(message)
     {}
 
-    virtual const char* what() const noexcept override
+    const char* what() const noexcept override
     {
         return message.c_str();
     }
@@ -25,7 +25,7 @@
         message(message)
     {}
 
-    virtual const char* what() const noexcept override
+    const char* what() const noexcept override
     {
         return message.c_str();
     }
@@ -41,7 +41,7 @@
         message(message)
     {}
 
-    virtual const char* what() const noexcept override
+    const char* what() const noexcept override
     {
         return message.c_str();
     }