This patch allows section to have owned section contents instead of a reference. This feature is necessary when we want to create a new section in the object (e.g., --add-section).
I'll commit this patch along with D66283 since this patch does not include test cases for newly added code.
Since you're storing the owned content as a std::vector<uint8_t>, it may make more sense for Content to be an ArrayRef rather than a StringRef.