CLC-3921 Support updates of events 

https://jira.ets.berkeley.edu/jira/browse/CLC-3921

Supports updates to class events, and does not squash attendees' responses (yes, no, maybe). 
Looking ahead to DRYing up the code. We have the rand(9999) block copied all over the place, and we should use the Time.now derived random instead since it's less likely to duplicate. It's out of scope for this JIRA to replace all occurrences in tests, but that is my plan.