Changed sorting if the user hit tab only once, or we had no visible completion list 

From by match type to by alphabet.

Why? Because in match type sorting we compare by match type, then by fuzzy match
(see common.cpp line 1863)

I assume we should always return completions in sorted order in this case (please correct me if I'm wrong).

This should close the bug #923.

Please, review my commits, I could miss something since it's my first contribution to fish.

All comments are welcome.)