CompletionModel: wipe out the current implementation

Keep the maximum for the new implementation.
There are also a few minor changes.
CompletionModel: separate functions into sections
CompletionModel: the new data structures
CompletionModel: implement get_iter()
CompletionModel: implement get_path()
CompletionModel: implement get_value()
CompletionModel: implement iter_next()