Base of elf outputting. Now, time to add relocations.

Side note: both GNU `readelf` and LLVM `objdump` recognize the file
properly as ELF64-x86-64, while GNU `objdump` doesn't. Hmm...