libtracker-bus: allow cancellation when iterating cursor

In the same way as the direct backend allows it.

Also modify the unit test so that we make sure the cancellation is detected.

https://bugzilla.gnome.org/show_bug.cgi?id=676209