Read default power mode & IPS parameters from DBus

If the power mode or idle power saver parameters have never been set,
they will be read from a set of default parameters that are on DBus.
This allows individual systems to have different default settings.
Mode/IPS parameters moved from Settings to OCC.Control

Code verified on Everest hardware with multiple scenarios including
host reboots, BMC reboots, OCC resets.

Change-Id: Id02613455db7f382791ff37c7dc420dbea1e0906
Signed-off-by: Chris Cain <cjcain@us.ibm.com>
diff --git a/occ_manager.cpp b/occ_manager.cpp
index ee8575d..3160131 100644
--- a/occ_manager.cpp
+++ b/occ_manager.cpp
@@ -136,7 +136,9 @@
 #ifdef POWER10
     if (!pmode)
     {
-        pmode = std::make_unique<open_power::occ::powermode::PowerMode>(*this);
+        // Create the power mode object
+        pmode = std::make_unique<open_power::occ::powermode::PowerMode>(
+            *this, powermode::PMODE_PATH, powermode::PIPS_PATH);
     }
 #endif
 
@@ -166,7 +168,7 @@
         if (!pcap)
         {
             pcap = std::make_unique<open_power::occ::powercap::PowerCap>(
-                *statusObjects.front());
+                *statusObjects.back());
         }
 
 #ifdef POWER10
@@ -292,7 +294,9 @@
     pcap = std::make_unique<open_power::occ::powercap::PowerCap>(
         *statusObjects.front(), occMasterName);
 #ifdef POWER10
-    pmode = std::make_unique<open_power::occ::powermode::PowerMode>(*this);
+    pmode = std::make_unique<open_power::occ::powermode::PowerMode>(
+        *this, open_power::occ::powermode::PMODE_PATH,
+        open_power::occ::powermode::PIPS_PATH);
     // Set the master OCC on the PowerMode object
     pmode->setMasterOcc(path);
 #endif