changed IEmulator#handleInterrupt() to have ICPU and IMemory parameters
that map to the emulator's internal CPU/memory instances. handleInterrupt() does not need
to use IEmulator#doWithEmulator() since the CPU_LOCK is already being held when
this method is executed so device implementations do not risk race conditions
when modifying CPU registers or memory inside this method call.
added SPED-3 , still not quite working as intended...