CompletionModel: new implementation (attention wip!)
Free return value of gtk_source_completion_model_get_providers()

In select_provider(), the variable 'providers' was declared a second
time, that's why it's renamed to 'visible_providers'.