ivy+counsel it's a quality package that reached already noticeable
popularity. Does fuzzy completion with vertical output display, and its
counsel-M-X shows also the command key binding (feature I consider for
my experience a _game changer_ for softening the learning curve).
Finally it's already in ELPA.
Last I heard Ivy still had problems with some completion tables (IIRC
with those completion tables that return non-trivial values from
`completion-boundaries`, such as the completion table used for
filenames, tho there might be other issues such as the support for
unquote/requote). If that's still the case (it was several years ago),
then enabling Ivy by default would either introduce regressions when
completing against such completion tables, or would force us to use
2 different UIs (the Ivy one where it works well, as some other UI for
those other cases) ;-(
Stefan