CompletionWords: little clean-up and code simplification

Some new GLib functions simplifies the code.
CompletionWords: simplify the dispose()
CompletionWords: remove match()

It is the default value, so no need to override the function.
CompletionWords buffer: clarify idle_scan_regions()

The code was correct (I think), but it was hard to understand. Now it is
still correct (hopefully), but a little easier to understand.
CompletionWords library: simplify the code

Use the new g_sequence_lookup() function.
CompletionWords: simplify get_word_at_iter()

Before this commit, get_word_at_iter() used GtkTextIter to traverse the
buffer char by char, to find the word boundaries.

Now, the text of the line at the iter is retrieved, and the traversal is
done directly on the string. The code is simpler.

It is maybe less efficient, but the performances here are not really
important (it's at most one line of text).

The parsing of the buffer to fill the words library is still done
entirely with GtkTextIters. It is planned to parse the buffer line by
line, by retrieving the text of the buffer and by working on strings.
In this case, the performances are more important, and working on
strings will be more efficient.

So the idea is to work everywhere on strings instead of working with
GtkTextIters, to be consistent.