Several cleanups in the patch:
- Use kernel headers for e820 types and definitions.
- A byte sized entry count for e820 enteries was used,
this should be dword sized. Update in-memory layout and
bios code to fix it.
- Use struct e820map to calculate offsets used by bios code.