Fix lesspipe.sh detection in custom PATH

The detection of lesspipe.sh has to be done after setting PATH as it
could be installed in a non-standard bin directory. For example,
Homebrew installs lesspipe in /usr/local.
[Fix #383] Do not set $MANPATH

man dynamically searches for man pages based on $PATH.
[Fix #385] Do not set $INFOPATH
[Fix #381] Remove the path_helper workaround
Use $GNUPGHOME in GPG agent startup

Use the value of $GNUPGHOME, to facilitate moving GPG's home.

This lets users who keep their GPG keyring on external devices or alternate
folders use the gpg-agent autostarting, even if $HOME/.gnupg does not exist.
Add support for nvm
[Fix #351] Set empty keys to an invalid UTF-8 sequence
Merge remote-tracking branch 'upstream/master'

* upstream/master:
  [Fix #351] Set empty keys to an invalid UTF-8 sequence
  Add support for nvm
  Use $GNUPGHOME in GPG agent startup
  [Fix #381] Remove the path_helper workaround
  [Fix #385] Do not set $INFOPATH
  [Fix #383] Do not set $MANPATH
  Fix lesspipe.sh detection in custom PATH