This is an implementation of a syncToken Google API feature (see T8376: [Calendar] Implement support for syncToken, and
https://developers.google.com/calendar/v3/reference/events/list) which is a
native way to perform incremental updates.
When EventFetchJob is created, we can provide it with a token by calling
job->setSyncToken(token), which will be used as a parameter for fetching.
Note: some of the parameters are incompatible with syncToken (timeMin,
timeMax, updatedMin, see API link above), so if token is provided, those
parameters get ignored.
When the job is finished, the next sync token can be obtained via
job->syncToken(). This token then can be used for the next EventFetchJob.