Tidy up interrupt handling in suspendDevice

Closes #111