Replace gtk_source_encoding_foreach() by get_all()

The API is smaller, GtkSourceEncodingForeachFunc is not needed, and
having a GSList is more convenient in C than defining a callback. The
callback takes a user_data argument, so the needed local variables must
be packed in a struct, which is less convenient if those variables are
not already in the Private struct.

A GSList has been chosen, because
gtk_source_file_loader_set_candidate_encodings() takes also a GSList.