Some kinds of relocations do not have symbols, like R_X86_64_RELATIVE for instance. I would like to test this case in D36554 but currently can't because symbols are required by yaml2obj. The other option is using the empty symbol but that doesn't seem quite right to me.
This change makes the Symbol field of Relocation optional and in the case where the user does not specify a symbol name the Symbol index is 0.
small wording nit: "should succeed" -> "succeeds", otherwise it isn't clear whether "should" implies "we don't do it now, but it should" and requires some context to disambiguate.