binutils, glibc: renumber relocs

The ones that are part of the dynamic linking ABI should now be finalized.
binutils: teach readelf about RISC-V
binutils: support subword local label subtraction

Things like
  .half .L2 - .L3
are now supported.  This required some new relocs.
binutils: refactor check_relocs
binutils, glibc, gcc: support TLS copy relocations

This allows the local-exec model to be used for any non-PIC TLS reference,
even if it cannot be proven at compile time that the access binds locally.
It essentially obviates the need for IE -> LE relaxations.
binutils, glibc: PIEs can now link

Binutils needs to allow R_RISCV_TPREL_HI20 relocs in PIE mode, and Scrt1.o
should use R_RISCV_CALL_PLT, not R_RISCV_CALL, to invoke __libc_start_main.