Correct GIC configuration

GICD_ITARGETSRx must only target the current cpu, and traps were corrupting
the stack - cleaned up the way the trap handlers use the SAVE_REGS macro
and made a new RESTORE_REGS macro to simplify clean up after handling trap.
Clean up output

Space output out a little more to make it easier to read