Decouple virtual memory allocation in ElfBuilder.

Multi-boot-image requires knowing the loaded size ahead of time,
and calculating that size ended up being fairly hacky.

Decouple allocation of virtual memory and allocation of file space,
so that we have more flexibility when we do those.

Test: The generated boot image is bit-for-bit identical as before.

Change-Id: I012b55a71e7625f2310570f9b91447c9db73578b
7 files changed