adding in bits from Ryan Neufeld's dotfiles