Log a PEL for communication, presence mismatch, and safe state errors

Add code to log a PEL in various error scenarios. Refactor some of the
error handling to get the return code out of the driver.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
Change-Id: Ifd91cfc063718e484ec8886df8357d115c6b41e3
diff --git a/occ_presence.hpp b/occ_presence.hpp
index 9e66acc..ef63c89 100644
--- a/occ_presence.hpp
+++ b/occ_presence.hpp
@@ -28,7 +28,7 @@
      *  @param[in] callBack - Optional function callback on error condition
      */
     Presence(EventPtr& event, const fs::path& file, const Manager& mgr,
-             std::function<void(bool)> callBack = nullptr) :
+             std::function<void(int)> callBack = nullptr) :
         Error(event, file, callBack),
         manager(mgr)
     {