lua-factory: Fix concurrent Lua calls to same source

This ensures that each fetch callback is called with the correct
OperationSpec as the current one, so that we avoid leaking memory
or crashing when 2 items overwrite the only store for OperationData.

Before each lua_pcall(), set the current operation data,
and unset it after.

https://bugzilla.gnome.org/show_bug.cgi?id=726563
lua-factory: Protect against broken sources

If no fetches are pending and grl.callback() was not called,
throw a warning, and clean up after the source to avoid
inconsistent states in front-ends.

https://bugzilla.gnome.org/show_bug.cgi?id=725209
tracker: Export file size

https://bugzilla.gnome.org/show_bug.cgi?id=629002
metrolyrics: fix initial check up

Artist and Title must be non empty strings.
Return after callback.

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