Check for (and abort on) multiple symbol tables
Only make space for more PHDRs if they are in the first LOAD
Expand downwards only if there is enough space
Expand PHDR space only if there are pages available
Separate PLT lookup
Only use -fPIC when compiling the shared object.

We can only use position-dependent global variables (R_*_COPY) in
injected code, not the position-independent R_*_GLOB_DAT as used in
shared objects.
And being able to modify the tool itself turns out to be a cool thing to
be able to.
Lookup dynamically linked global variables.

This works ONLY in position-dependent executables.

Processing position-independent code includes generating and inserting
code that finds out the current instruction address. That's beyond the
scope of editing normal executables, which are usually
position-dependent unless requested otherwise.
Remove stale Makefile in tests/src/
Move test data256mb to end and add data64kb
Dump: More info about child sections
Relax restrictions on NOBITS sections
Add test for dynamically linked global variables (stdout, etc)
Serialize symtab after merge in Reladd
Remove unneeded struct member and fix references to it
Allocate .symtab during Reladd if none present