Refactor: Make Activation inherit FilePath interface

Previously Version inherits FilePath interface to provide the
information of the file path property of a software, and Activation was
using pre-defined location to find the image path (IMG_DIR / versionId).

Now the code is going to support pre-built image and stored image during
update, the Activation class needs to know the file path to perform the
update.

So this commit "moves" the FilePath from Version to Activation.

Tested: Verify the "Path" property on FilePath still exists on the DBus
        object after uploading a tarball.

Signed-off-by: Lei YU <mine260309@gmail.com>
Change-Id: I37b41eaa93cd239ab7732f6fac9400410995ca71
diff --git a/src/item_updater.hpp b/src/item_updater.hpp
index 67f6e57..33db8bc 100644
--- a/src/item_updater.hpp
+++ b/src/item_updater.hpp
@@ -112,7 +112,7 @@
         const std::string& extVersion,
         sdbusplus::xyz::openbmc_project::Software::server::Activation::
             Activations activationStatus,
-        const AssociationList& assocs);
+        const AssociationList& assocs, const std::string& filePath);
 
     /** @brief Create Version object */
     std::unique_ptr<Version>
@@ -120,8 +120,7 @@
                             const std::string& versionId,
                             const std::string& versionString,
                             sdbusplus::xyz::openbmc_project::Software::server::
-                                Version::VersionPurpose versionPurpose,
-                            const std::string& filePath);
+                                Version::VersionPurpose versionPurpose);
 
     /** @brief Create Activation and Version object for PSU inventory
      *  @details If the same version exists for multiple PSUs, just add