ABI: Transmit both TSC value and TSC offset in the UTCB.
API: Define capability permission bit for portal IPC.

Also ensure root capabilities have only defined permissions set.
VMX: Allow the user to set the instruction length during event injection.
API: Added pt_ctrl hypercall.

See the change bars in the interface specification for related API changes.
Added PCI quirk infrastructure.
Don't shutdown with console lock held.
Return failure from PTE sync if master mapping does not exist.
Avoid resync page faults during access to the OBJ or PIO space.
Changed header file extension for better language detection.
Build: Fix compiler warning.
Build: Enable support for colorizing diagnostics emitted by GCC.
vTLB: Use PAE format on 64bit hosts.
VMX: Correctly serialize VMCS after initialization.
TLB: Added PCID support.
Move recall functionality into Ec class.
Quick'n'dirty first shot at virtual IRQs.

Several things are missing:
 - where do we want to store the event bit field in the UTCB?
 - how do we want to block?
   Option a) Bind a semaphore to the virtual IRQ
   Option b) Move semaphore's blocking functionality into VI and remove kernel semaphores. But what about real IRQs?

And yes, it is currently untested.
Use two different ECs for recalling and event delivery. create_vi ABI changed.
Rename Ec::evt to Ec::exc_base to avoid confusion with event bitmask.
Added mask argument to vi_ctrl.
Allow NULL-pointers in Refptr.