dot/emacs: Turn on the fancy Ido toys.
If we have `ido-completing-read+' then we can safely turn on Magit's Ido
support (which apparently depends on that package to sort out some edge
cases). The `ido-ubiquitous' package extends Ido goodness to other
commands, and depends on `ido-completing-read+' to do its dirty work
anyway, so if we can enable that then it's safe to throw Magit's switch.
Finally, `smex' brings Ido goodness to M-x.
For safety's sake, leave traditional `execute-extended-command' on C-c
M-x.