Enable and enforce cpp core guidelines

While in theory we enforce cpp core guidelines in code review, clearly,
we're missing some things.  This commit enables all the automated checks
that we can pass reasonably at the moment.
Tested: Code compiles

Tested: Ran redfish service validator on the result of the series.
No new failures.

Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I6dca1c822de38931eb9fa252db99fb57401b5a46
diff --git a/.clang-tidy b/.clang-tidy
index 7f36b77..eedc6d8 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -201,10 +201,16 @@
 clang-analyzer-valist.ValistBase,
 clang-analyzer-webkit.NoUncountedMemberChecker,
 clang-analyzer-webkit.RefCntblBaseVirtualDtor,
+cppcoreguidelines-avoid-c-arrays,
+cppcoreguidelines-avoid-goto,
+cppcoreguidelines-c-copy-assignment-signature,
+cppcoreguidelines-explicit-virtual-functions,
 cppcoreguidelines-init-variables,
 cppcoreguidelines-interfaces-global-init,
 cppcoreguidelines-macro-usage,
+cppcoreguidelines-narrowing-conversions,
 cppcoreguidelines-no-malloc,
+cppcoreguidelines-prefer-member-initializer,
 cppcoreguidelines-pro-bounds-array-to-pointer-decay,
 cppcoreguidelines-pro-bounds-pointer-arithmetic,
 cppcoreguidelines-pro-type-const-cast,
@@ -212,7 +218,9 @@
 cppcoreguidelines-pro-type-member-init,
 cppcoreguidelines-pro-type-reinterpret-cast,
 cppcoreguidelines-pro-type-static-cast-downcast,
+cppcoreguidelines-pro-type-union-access,
 cppcoreguidelines-pro-type-vararg,
+cppcoreguidelines-slicing,
 cppcoreguidelines-special-member-functions,
 misc-misplaced-const,
 #misc-no-recursion,