Rather than the custom event sorting plugin being based on the `created`
value, this change adds a new `field_event_date` field to the talk node
type and uses this for the sorting instead.
This commit also adds a new `TalkDateUpdater` service that extracts
either the next event date if there is a future date, or the last past
event date if there is no future date, from `field_events` for each talk
and saves it into the event date field.
For consistency, and to ensure that the results are ordered correctly,
the talk date updater converts the date from a date string (e.g.
`2020-08-24`) into a UNIX timestamp, and the timestamp is saved in the
event date field. This can be changed at a later date if needed.
The talks view has been updated to use the updated sort plugin, and the
existing tests have been updated to use the new field.
References #204
Update the ordering of the future talks on the talks page so that
upcoming talks are shown in chronological order (soonest first),
followed by past talks in reverse chronological order (most recent
first).
This still uses the `created` date for ordering, which is updated
automatically on saving the node to match the furthest future talk, but
I may want to move that into a custom node property at some point.
Fixes#140