control: DBusZone object for dbus objects

Create a DBusZone object to handle zones configured to provide the
ThermalMode dbus interface on dbus. Each zone will have an instance of
this object when configured to provide the ThermalMode interface instead
of the zone object doing this directly. This was done to handle SIGHUP
signals that would reload the zone configuration which may or may not
affect what interfaces are put on dbus for each zone object.

Change-Id: I3e78c6d53a9690b9297c71ea3e0852d7d7b01746
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
diff --git a/control/json/zone.hpp b/control/json/zone.hpp
index 6ed90f8..5176c4b 100644
--- a/control/json/zone.hpp
+++ b/control/json/zone.hpp
@@ -296,6 +296,16 @@
     void setPersisted(const std::string& intf, const std::string& prop);
 
     /**
+     * @brief Is the property persisted
+     *
+     * @param[in] intf - Interface containing property
+     * @param[in] prop - Property to check if persisted
+     *
+     * @return - True if property is to be persisted, false otherwise
+     */
+    bool isPersisted(const std::string& intf, const std::string& prop) const;
+
+    /**
      * @brief Overridden thermal object's set 'Current' property function
      *
      * @param[in] value - Value to set 'Current' to
@@ -465,16 +475,6 @@
     void setInterfaces(const json& jsonObj);
 
     /**
-     * @brief Is the property persisted
-     *
-     * @param[in] intf - Interface containing property
-     * @param[in] prop - Property to check if persisted
-     *
-     * @return - True if property is to be persisted, false otherwise
-     */
-    bool isPersisted(const std::string& intf, const std::string& prop);
-
-    /**
      * @brief Save the thermal control current mode property to persisted
      * storage
      */