host-bmc: Implement Board interface

Adding support to host Board dbus interface.  Based on the PDRs received
from remote PLDM terminus, PLDM hosts the dbus interface based on the
entity type.  The Board interface is defined at [1].

Tested:
   Functional test passed

[1]: https://github.com/openbmc/phosphor-dbus-interfaces/blob/master/yaml/xyz/openbmc_project/Inventory/Item/Board.interface.yaml

Change-Id: I672abd2972eb18a4b1a81155811a544927884627
Signed-off-by: Archana Kakani <archana.kakani@ibm.com>
diff --git a/host-bmc/dbus/custom_dbus.cpp b/host-bmc/dbus/custom_dbus.cpp
index 42acc59..1108b4a 100644
--- a/host-bmc/dbus/custom_dbus.cpp
+++ b/host-bmc/dbus/custom_dbus.cpp
@@ -137,6 +137,16 @@
     }
 }
 
+void CustomDBus::implementBoard(const std::string& path)
+{
+    if (!board.contains(path))
+    {
+        board.emplace(path,
+                      std::make_unique<Board>(
+                          pldm::utils::DBusHandler::getBus(), path.c_str()));
+    }
+}
+
 void CustomDBus::implementPowerSupplyInterface(const std::string& path)
 {
     if (!powersupply.contains(path))