Event migration

Jon and Amal collaborated on this.
replaced the event model fields (event_date, start_time, end_time) 
with (start_datetime, duration).  
This removes the need for the from_must_come_before_to validation.
Many changes to accomodate tests, event _form view, events controller services (create and update), and more.
No migration test. I don't know if it's necessary, but if you insist, then I'll work on it.
params[:duration], (similarly, the other params listed above) will only exist when the user enters invalid data into the form and the form is reloaded by the controller. So if it exists but is blank, that's what the user had enterred and it's the best/correct value.