eds: fix crash when source is removed
When a source is removed from an EDS provider, the source-removed
signal is apparently firing more than once per source, resulting in
a segmentation fault.
Avoid storing the GtdTaskList
as private data in the ESource
and
instead steal it from the hash table using the ESource:uid
. This
ensures the uid is valid and a reference is held on the GtdTaskList
while GtdProvider::list-removed
is emitted.