mini-os: Make x86_64 support work again
mini-os: Fixed "make clean"

Was failing to delete object files from some subdirectories.
mini-os: Removed test_xenbus from idle thread

Looks like this was just left-over debug code.
mini-os: Fixed #ifdef test
mini-os: Made off_t type signed

POSIX requires this.
mini-os: Make .o files depend on includes

Before, only the final link step depended on setting up the includes
directory, making the build unreliable.
mini-os: When panicing, show which exception vector was called
mini-os: Reorganised arch headers

Before, we had:

- include
- include/arm
- include/x86

Where either arm or x86 was added directly to the search path. So
<x86/arch_limits.h> was the same file as <arch_limits.h> on x86.

We now have:

- include
- arch/arm/include
- arch/x86/include

This means that only the second form is now legal. It also simplifies
installation of the headers, since we can now install everything in the
include directory without getting files for other archs.
mini-os: Added make install target

This installs libminios.a, the linker script, the headers and a
pkg-config file to locate them.
mini-os: Removed unused (and missing) header
mini-os: Expose opt_console_dev and xenstore_buf for Mirage
Fixed installation of headers
Fixed library install location
Fixed symlink creation

Include these as explicit make rules instead of using a phony target.
Avoids unnecessary rebuilds.
Include arch-specific linker flags in pkg-config file