Bugfixes
-events now silence correctly if a custom ringer is not set (fixes #1)
-device will only vibrate if transitioning from no event active to active event or from active event to no active event (fixes #2)
-reduced the number of database syncs needed
-moderate refactoring to reduce coupling