This fixes ELF-header generation in 0l/vl so that the early parts of the header are byte-order-independent and the later parts are in the target byte order. I believe the alignment claims made by the header are more accurate, too. This has been tested for little-endian targets only, but produces ELFs which are loadable by the Simics system simulator and which "make sense" to readelf and objdump.