Redfish EventService schema implementation

Add Redfish EventService schema support for
EventService - GET and PATCH methods.
EventDestinationCollections - GET and POST methods.
EventDestination - GET, PATCH and DELETE methods.

URI's:
/redfish/v1/EventService
/redfish/v1/EventService/Subscriptions
/redfish/v1/EventService/Subscriptions/<id>

Tested:
 - Validated all default event config data using GET.
 - Validated supported/unsupported properties change.
 - Validated range parameters for retry and timeout.
 - Added new subscription using POST and validated using GET.
 - Modified subscription using PATCH and validated.
 - Validated delete subscription.
 - Validated negative case for eventTypes, RegistryPrefixes,
   mandate properties for POST etc.
 - Successfully ran the redfish validator tool.
   Counter({'metadataNamespaces': 1739, 'pass': 24,
            'skipOptional': 23, 'passGet': 3,
            'serviceNamespaces': 3})
   Validation has succeeded.

Signed-off-by: AppaRao Puli <apparao.puli@linux.intel.com>
Change-Id: I220de2cb85e73124753d95b7ee311f1c30e2cce4
diff --git a/redfish-core/include/redfish.hpp b/redfish-core/include/redfish.hpp
index aacfda0..62c7ad8 100644
--- a/redfish-core/include/redfish.hpp
+++ b/redfish-core/include/redfish.hpp
@@ -21,6 +21,7 @@
 #include "../lib/chassis.hpp"
 #include "../lib/cpudimm.hpp"
 #include "../lib/ethernet.hpp"
+#include "../lib/event_service.hpp"
 #include "../lib/log_services.hpp"
 #include "../lib/managers.hpp"
 #include "../lib/message_registries.hpp"
@@ -174,7 +175,9 @@
         nodes.emplace_back(std::make_unique<TaskService>(app));
         nodes.emplace_back(std::make_unique<TaskCollection>(app));
         nodes.emplace_back(std::make_unique<Task>(app));
-
+        nodes.emplace_back(std::make_unique<EventService>(app));
+        nodes.emplace_back(std::make_unique<EventDestinationCollection>(app));
+        nodes.emplace_back(std::make_unique<EventDestination>(app));
         for (const auto& node : nodes)
         {
             node->initPrivileges();