arm: improve agtimer for fdt and kvm support

 * If we're running as virtual machine, use the virtual timer,
   otherwise keep running with the physical.
   Note: We do not yet know how to differentiate both.
 * Use FDT to read and register all the interrupts pins.
 * Do not accept IRQ if istatus is not set.
arm: Implement a simple fdt bus.

Convert virtbus to use it.