[mach-o] implement more x86 and x86_64 relocation support

Add support for adding section relocations in -r mode.  Enhance the test
cases which validate the parsing of .o files to also round trip.  They now
write out the .o file and then parse that, verifying all relocations survived
the round trip.

git-svn-id: https://llvm.org/svn/llvm-project/lld/trunk@213333 91177308-0d34-0410-b5e6-96231b3b80d8