SectionRef::getName() returns std::error_code now.
Returning Expected<> instead has multiple benefirs
For example, it forces user to check the error returned.
Also Expected<> may keep a valuable string error message,
that is more useful than having a error code.
(Object\invalid.test was updated to show the new messages printed.)
This patch makes a change for all users to switch to Expected<> version.
Important note: in a few places the error returned was ignored before my changes.
In such places I left them ignored. My intention was to convert the interface
used, and not to improve and/or the existent users in this patch.
(Though I think this is good idea for a follow-ups to revisit such places
and either remove consumeError calls or comment each of them to clarify why
it is OK to have them).
What if the Expected is in the success state, but the StringRef is empty?