Implement a Gnome Shell search provider

For now it just reads from the gsetting world clock list every time. We
may want to make share the model with the actual World panel instead
so that we do not rebuild the table every time, but given how small our
search model is, it does not seem to be a performance problem.

More generic questions are:
 * should we search also other locations beside the one added in the
   world clock?
 * should we also search alarm names?