Restructure the date input for events

Events could not select the date and time (duration).

This commit is an intermediate commit to add date and time
fields to the event dialog.  Times can now be picked from
a list. Date pickers are next.

The previous implementation used HTML5 datepicker (input type=date)
which is not supported in many browsers and was a hack.
Functional date picking UI

Can now pick dates and events, and dates automatically
adjust based on what's selected.  Uses the
bootstrap-datetimepicker library, which relies on
momentjs (which looks incredibly useful for time
manipulation in the future).

Now just need to hook the dates up to the event model
changes, so the dates get stored correctly on the backend.
Store selected date/time values

Create date objects for the start and end times based
on the UI input.  Correctly store them in the database.