Bug fix: Interrupt automaticaly deleted

1st bug: Previous commit partially fixed bug. On module unloading, IRQ where not freed up.
2nd bug: with switch bouncing, shutdown function is called multiple times, trying to free IRQ multiple times (bad), without doing a proper shutdown.
Now, IRQ is freed up only in unload module function (much better)