calendar: Define EventSourceInterface and implement EventSource's

Objects implementing EventSource should have some mandatory methods and
properties, we can ensure this by defining an EventSourceInterface.

So inhert EmptyEventSource and DBusEventSource from GObject's making sure
that they implement the EventSourceInterface, using native properties and
replacing the 'notify::*' emissions with proper object notify calls.

GNOME/gnome-shell!563
6 jobs for !563 with more-gobject-objects in 9 minutes and 22 seconds (queued for 2 seconds)
latest detached
Status Job ID Name Coverage
  Review
passed #374286
check_commit_log

00:00:28

passed #374288
eslint

00:01:43

passed #374287
js_check

00:00:38

 
  Build
passed #374289
build

00:06:07

 
  Test
passed #374290
test

00:01:30

passed #374291
test-pot

00:01:22