These options correlate directly to many GnuPG options. For those that
are boolean to GnuPG, simply that argument is passed. For those
that are associated with a scalar, that scalar is passed passed
as an argument appropriate. For those that can be specified more
than once, such as recipients, those are considered lists
and passed accordingly. Each are undefined or false to begin.

Meta options are those which do not correlate directly to any
option in GnuPG, but rather are generally a bundle of options
used to accomplish a specific goal, such as obtaining
compatibility with PGP 5. The actual arguments each of these
reflects may change with time. Each defaults to false unless
otherwise specified.

These options are being designed and to provide a non-GnuPG-specific
abstraction, to help create compatibility with a possible
PGP::Interface module.

To help avoid confusion, methods with take a form of a key as
an object shall be prepended with _id(s) if they only
take an id; otherwise assume an object of type GnuPG::Key
is required.

This list of keys of the type GnuPG::Key are used to generate the
appropriate arguments having these keys as recipients.
You probably want to have this list be of the inherited class
GnuPG::SubKey, as in most instances, OpenPGP keypairs have
the encyrption key as the subkey of the primary key, which is
used for signing.