WIP: Example of extension mechanism and usage

Adds the extension mechanism created ages ago by Lars Wirzenius at http://cgit.collabora.com/git/gtimelog.git/?h=sync-with-upstream

Is this something you'd be happy to take upstream? The idea would be, as was done to a large extent in that branch and bitrotted, to move all the Collabora changes into a collabora_ext file that we carry separately and otherwise sync more closely with upstream.

I don't know if you'd want to supply all the hooks listed in http://cgit.collabora.com/git/gtimelog.git/tree/src/gtimelog/__init__.py?h=sync-with-upstream from the beginning or add them as extensions had a need for them. I imagine some of them no longer make sense.