Revert the rest of 3a7afa7, it also breaks things after all...
Even narrowing the filter string can lead to a resort, since we now
include "abbrevation" and "contains" matches. These are have a lower
sort order than the "starts-with" matches. Now consider these matches:
This is what the user sees when invoking an empty code completion. Now
if he presses "B" the "AAA<BBB>" match should get to the bottom (only
a contains match). If he adds two more B's the "BBAB" will also need
to be resorted...
Sorry for that guys, I didn't spot that soon enough (we really need
more unit test for the code completion!).