add class scoped_push to automatically restore variable on function exit
Add proper desriptions to "git submodule"
Hopeful fix for https://github.com/fish-shell/fish-shell/issues/594
Additional changes related to https://github.com/fish-shell/fish-shell/pull/592
autocomplete 'yum install' using yum cache
recreate yum-cache file every six hours.
configure: only check for libintl if we want to use gettext (makes --without-gettext actually work)
configure: only check for gettext/dcgettext if we want them (makes --without-gettext work on platforms where gettext exists but isn't wanted)
configure: disable gettext support if msgfmt isn't found (fixes https://github.com/fish-shell/fish-shell/issues/548)
Merge branch 'master' of git://github.com/aliva/fish-shell into aliva-master
Kill termio.h and sys/termios.h

On FreeBSD, compilation complains that "this file includes
<sys/termios.h> which is deprecated, use <termios.h> instead". On Linux
and FreeBSD, <sys/termios.h> literally just pulls in <termios.h>. On OS
X and Solaris, <termios.h> pulls in <sys/termios.h>.

<termio.h> doesn't exist on FreeBSD or Mac OS X, and on Linux is marked
as deprecated and just includes <termios.h>. It does exist on Solaris,
but no `struct termio` is ever actually used in the codebase.