Map is still identity-mapped. I think we need to sort and/or clean up
the map before using a higher half address. In-kernel vga output not
working yet, but do_the_set_registers() is getting called.
Kernel image now has a header with version, magic number, and a
pointer to its actual entrypoint. Entry point is now _start in
boot.s, and we now generate versions.s in the build tree for the
version macros.
* Main was using CHECK_EFI_STATUS_OR_RETURN despite saying it shouldn't
* Use con_status* calls instead
* Clean up line-clobbering in con_status_{ok,fail}
Includes routine replacing efilib's LibMemoryMap, and a debug function for
dumping the map to the console. Currently get_memory_map() is only used
for the debug function dump_memory_map.
Thanks to Finnbar Murphy for the blog post that helped me figure out why
my memory map iteration was wrong.
http://blog.fpmurphy.com/2012/08/uefi-memory-v-e820-memory.html