Clean up x86_64.o and entry point namespace

This is pass 1 of X of cleaning up mini-os:

- Clean up and comment the code in x86_64.o. To be continued.
- Namespace all globals in x86_64.o (except _start) as _xenos_XXX.
- Fix dependent calling code to use the new namespace
  (hypercall-x86_64.h, sched.h, xen/arch/x86/*.c).

Signed-off-by: Martin Lucina <martin@lucina.net>
Build XenOS and rump kernel middleware as discrete objects

In order to be able to make XenOS symbols local using objcopy we need to
build XenOS as a discrete relocatable object. While we're here, put the
various rump kernel middleware (libc stubs, rumphyper implementation)
into its own object file also.

Signed-off-by: Martin Lucina <martin@lucina.net>