Merged e817564a119cd256169eeb20418ad67deed9cc24 to master.
First, look for '/proc/xen/capabilities' and determine if it is a guest based on its contents.
Second, look for '/proc/sys/xen/independent_wallclock' to detect a guest, although I don't know if there is ever a case where #1 is not true and this is.
virt-what also detects a hardware (fully virtualized) xen guest by its cpuid being "XenVMMXenVMM" but we don't have easy access to that information.
virt-what also points to '/sys/hypervisor/type' which should contain 'xen' but won't tell us if this is a guest or host.
The existence of '/dev/xen/evtchn' only tells us if the kernel contains CONFIG_XEN_DEV_EVTCHN or if said module is loaded.