Add runningOnQEMU() and runningOnXen() for runtime platform detection.

Introduce standard for performing and inspecting the run-time
detection of para-virtualized environments.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Consistently use CONFIG_COREBOOT, CONFIG_QEMU, and runningOnXen().

CONFIG_QEMU means compile to start from QEMU (and possibly
Xen/KVM/Bochs) and definitely running under QEMU (or Xen/KVM/Bochs).

CONFIG_COREBOOT means compile for coreboot and definitely running
under coreboot.  Places that used CONFIG_COREBOOT to mean "running on
real hardware" have been changed to use !CONFIG_QEMU.

CONFIG_QEMU_HARDWARE enables support for some virtual hardware devices
even if QEMU didn't start SeaBIOS.

usingXen() is replaced by runningOnXen().

runningOnQEMU() is added to hardware devices that are only safe to
access when we are sure we are running under QEMU (or Xen/KVM/Bochs).
Neither the coreboot nor the csm code currently enable runningOnQEMU,
but future patches may.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Convert kvm_para_available() to runningOnKVM().

Make the KVM detection code use the same format as the QEMU/Xen
detection code.

Also, log when KVM is detected.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Minor - move definitions to paravirt.c from paravirt.h.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>