PEL: Const accessors for Private/UserHeader

Change the combined non-const accessor/setter functions for the
PrivateHeader and UserHeader fields to the standard const accessors, and
have separate setters for the fields that need to be modified.

In addition, make the 'get PrivateHeader' and 'get UserHeader' functions
on the PEL class return a const reference.

This allows const enforcement on the PEL class, for things like:

void func(const PEL& pel)
{
    auto id = pel.privateHeader().id();
}

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I840170e72b41e9e2465f716617500269244de6d9
diff --git a/test/openpower-pels/repository_test.cpp b/test/openpower-pels/repository_test.cpp
index 85ceab6..bd1953f 100644
--- a/test/openpower-pels/repository_test.cpp
+++ b/test/openpower-pels/repository_test.cpp
@@ -61,7 +61,7 @@
 
     // Check that the PEL was stored where it was supposed to be,
     // and that it wrote the PEL data.
-    const auto& ts = pel->privateHeader()->commitTimestamp();
+    const auto ts = pel->privateHeader().commitTimestamp();
     auto name = Repository::getPELFilename(pel->id(), ts);
 
     fs::path file = repoPath / "logs" / name;