Please Pull. Updates modernize codebase, fix static initialization problem, and silences a bunch of warnings.

Newer compiler toolchains play nicer with newer versions of libgcrypt and
libgpg-error. This commit updates libgcrypt to 1.6.2 and libgpg-error to 1.17.