Add validation for event start and end dates

 - server side validation on creation and edit
 - client side validation on creation
 - client side validation on edit
 - fix #1642
pytz is thirdparty