steal a bunch of ideas back from emacs-prelude