Added shift cancelation support.

Shifts can now be canceled, this will show on the schedule.
When a shift is canceled, an email will be sent out.
Shifts can also be uncanceled.