AlarmPoller: Fix debounce code

We need to update the _was* variables on every read, not just the first
time when we don't have a value yet.
Remove unused import
Move the notification code to separate methods

Dealing with state changes is likely to become a significant bit of
code, so move it out into separate methods.

Right now we only log these events, but at least the 'alarm becomes
triggered' one is going to need to do active notification to the user(s).