PEL: ExtendedUserData section class

This class represents the Extended User Data section.  This section is
similar to the UserData class in that it stores free form FFDC data,
except that it is meant to be added to an already existing PEL by a
creator subsystem that is different than the PEL creator's subsystem.
As such, it stores the section creator's creator ID value as a field
within the section, which the regular UserData class doesn't do.

The same parsers that run on the UserData section can also run on this
section.

Change-Id: I8562a89141f0305e397703f0cb92a06eb9f10133
diff --git a/extensions/openpower-pels/section_factory.cpp b/extensions/openpower-pels/section_factory.cpp
index 43a7d70..6a89e1d 100644
--- a/extensions/openpower-pels/section_factory.cpp
+++ b/extensions/openpower-pels/section_factory.cpp
@@ -15,6 +15,7 @@
  */
 #include "section_factory.hpp"
 
+#include "extended_user_data.hpp"
 #include "extended_user_header.hpp"
 #include "failing_mtms.hpp"
 #include "generic.hpp"
@@ -66,6 +67,9 @@
         case static_cast<uint16_t>(SectionID::extendedUserHeader):
             section = std::make_unique<ExtendedUserHeader>(pelData);
             break;
+        case static_cast<uint16_t>(SectionID::extUserData):
+            section = std::make_unique<ExtendedUserData>(pelData);
+            break;
         default:
             // A generic object, but at least an object.
             section = std::make_unique<Generic>(pelData);