Fix a bug due to the _py3k check being moved to the utils module.
Remove the version string from generated keys, encrypted files, and sigs.
Enable all tests in the Makefile.

 * To run tests, it is necessary -- due to the module structure -- to do:
       $ make uninstall && make install && make test
   which is recommended to do in a virtualenv, or similar such isolated testing
   environment.
Add a docsting for GPG.delete_keys().
Fix a bug due to calling a GnuPG option which was removed several versions ago.
Separate options into tidy groups so that the parser handles them efficiently.
Add subkey support and a docstring to GPG.export_keys().
Fix two bugs, one due to an extra pair of quotes, the other due to strformat.
Remove old TODO comment.
Add a testing mode to GPG.gen_key_input() which uses insecure PRNG.

 * This should only be used in the unittests, as the PRNG it uses in GnuPG does
   not create strong keypairs (though it's faster, thus why we're using it for
   testing).
Fix typo in docstring.
Cleanup indentation style a bit.
Add all available key fields for GPG.gen_key_input to the docstring.
Split the old test_encryption_and_decryption() up into several smaller tests.
Fix a bug in two unittests caused by a method not having been renamed.
Update test_import_and_export() unittest with newer key generation utility.
Fix a call in a unittest to _make_binary_stream() to call the correct module.
Remove unused logger statement.
Ignore socket configuration files for emacs.
Add cipher, compress, and digest preferences and rename parameters.

 * Rename gpghome to homedir.
 * Rename gpgbinary to binary.
 * Add setting to append '--no-use-agent' to the command string in an attempt
   to overcome bugs resulting on systems where the user has gpg-agent running
   in the background (with some configurations, this is run before X is
   started, and killing the agent can result in X dying) and GnuPG tries to
   call the program specified by the symlink at /usr/bin/pinentry, result in
   encryption and decryption failing due to the '--batch' option blasting
   through pinentry without input. This results in a complaint from GnuPG:

       gpg: Sorry, no terminal at all requested - can't get input

   This bug also prevents symmetric encryption/decryption from working in a
   similar manner.
       Daniel Kahn Gilmor's monkeysphere, if I am recalling correctly, has a
   hack to remove the $DISPLAY variable from the users environment, and then
   add it back in, but frankly this option frightens me, as unsetting the
   display could result in all X applications failing.
       Werner Koch's suggestions, from the gnupg-devel mailing list are:
   http://lists.gnupg.org/pipermail/gnupg-users/2007-April/030927.html
       And, for the record, '--no-use-agent' doesn't disable pinentry.