[CORE] First-cut implementation of IOMMU framework

This patch adds Linux-like IOMMU framework for Xvisor.

Currently, the IOMMU framework is little incomplete due
to pending changes in device driver framework.

The IOMMU framework will be used by device drivers via
linux-compatible linux/iommu.h header. It will be also
used by emulator to setup IOMMU context for pass-through
devices.

Signed-off-by: Anup Patel <anup@brainfault.org>