Add configuration files for GNU Gnulib.

Gnulib provides implementations for the not-so-portable functions used
in this codebase, namely the argp program options parser and the
related getsubopt() function.  gnulib-tool takes care of importing the
required modules using the gnulib-cache.m4 file.
Modify build system to include Gnulib.

Add the required configuration flags for autoconf and automake to
build gnulib modules before our own sources which depend on the
functionality.  Add gnulib-cache.m4 to EXTRA_DIST for use in source archives.
Add dummy file gnulib/.gitignore.

This avoids automake warnings when the gnulib directory is missing.
Make GNU Gnulib usage optional.

Hide the gnulib configuration macros behind m4_ifdef() conditionals.
Add USE_GNULIB conditional for automake to skip subdir if not in use.
This allows compilation of a source tarball without first invoking
gnulib-tool.
Ignore some files added by gettextize.
Check USE_GNULIB in src directory.
Merge branch 'gnulib' into develop