Implemented snooze

Made snooze button work and fixed several bugs related to the alarm
firing to ensure it always sounds when it should.