settings: handle multiple objects/interfaces

Handle the fact that a settings object can now implement multiple
interfaces, and also the fact that multiple settings objects
can implement the same interface.

Change-Id: Icf55b08fe2d355a10f7007489dfddb128e05d90e
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
diff --git a/settings.hpp b/settings.hpp
index 60ee4d4..ec1d913 100644
--- a/settings.hpp
+++ b/settings.hpp
@@ -42,12 +42,8 @@
          */
         Service service(const Path& path, const Interface& interface) const;
 
-        // TODO openbmc/openbmc#2058 - This will break when multiple settings,
-        // or in general multiple objects implement a single setting interface.
-        // For instance this will break for a 2-blade server, because we'd have
-        // 2 sets of settings objects. Need to revisit and fix this.
         /** @brief map of settings objects */
-        std::map<Interface, Path> map;
+        std::map<Interface, std::vector<Path>> map;
 
         /** @brief The Dbus bus object */
         sdbusplus::bus::bus& bus;