This will allow us to properly do interrupts for XHCI devices in the
future.
Also move PCI device header parsing to a shared library.
Get rid of the old irq register format which supplied an irq number and
instead pass the appropriate irq number back out to the caller.