Host updater: Remove the Object.Delete interface from functional version

This commit enhances the host updater by dynamically removing the
Object.Delete interface from a host activation that is currently
running. Once the host isn't running anymore, the interface is re-added
so that the activation may be deleted.

Additionally, isVersionFunctional() from  the parent updater is exposed,
since this function is needed to determine whether a given activation
is currently running on the host.

Add the Delete interface to all interfaces when the item updater starts
up, because the chassis state would be off initially, and in the case
where it automatically powers on because the BMC rebooted while the host
was on, the chassis property signal would cause the Delete interface to
be removed.

Change-Id: I4afcc1ebe2e8a3ce212b426749295e79b68cac62
Signed-off-by: Michael Tritz <mtritz@us.ibm.com>
diff --git a/item_updater.hpp b/item_updater.hpp
index 893e8b9..e0c4450 100755
--- a/item_updater.hpp
+++ b/item_updater.hpp
@@ -172,6 +172,14 @@
         /** @brief Persistent GardReset dbus object */
         std::unique_ptr<GardReset> gardReset;
 
+        /** @brief Check whether the provided image id is the functional one
+         *
+         * @param[in] - versionId - The id of the image to check.
+         *
+         * @return - Returns true if this version is currently functional.
+         */
+        static bool isVersionFunctional(const std::string& versionId);
+
     private:
         /** @brief Callback function for Software.Version match.
          *  @details Creates an Activation D-Bus object.
@@ -227,14 +235,6 @@
           * Activation D-Bus object */
         void reset() override;
 
-        /** @brief Check whether the provided image id is the functional one
-         *
-         * @param[in] - versionId - The id of the image to check.
-         *
-         * @return - Returns true if this version is currently functional.
-         */
-        static bool isVersionFunctional(std::string versionId);
-
         /** @brief Check whether the host is running
          *
          * @return - Returns true if the Chassis is powered on.