Fix error introduced in 3c925e997eb50a60d4d89fd5772a0fb0f17bc48f

 * Fix error in _copy_data() due to wrong parameters in call to
   logger.exception. *facepalm*
Update .gitignore to exclude .org files.
Fix unsanitized inputs in GPG.verify_file().

 * Update docstring for GPG.verify_file().
Update docstring in GPG.import_keys().
Add note about parsing GPG keys in binary format.
Add function for checking that the read uid/gid has correct permissions.

  * Add function _has_readwrite().
Cleanup a bit of non-PEP-8 conformant code.
Add function which implements the bash 'which' feature.

 * Add function _which(), which is shamelessly stolen from Twisted's
   twisted.python.procutils module.
Remove extra whitespace.
Fix unsanitised user input vulnerability in GPG.recv_keys().

 * Add wrapping of user inputs `keyids` and `keyserver` in calls to
   _fix_unsafe().
 * Apologies for the hairy ''.join([(lambda: x)() for x in keyids]), sort
   of. Common Lisp was my first language and this is totally readable and
   natural to me, and all the rest of you haters just need to get better at
   functional programming.
Change default key length in GPG.gen_key_input() to 2048 bits.
Fixed misnamed parameters in functions _which() and _fix_unsafe().
Fix unsanitised inputs for GPG() parameters 'gpgbinary' and 'gpghome'.

 * Update all docstrings and functions to use 'gpghome' instead of
   'gnupghome'.
Catch TypeError in _fix_unsafe(), for cases where the input is None.
Fix non-PEP-8 docstring in _underscore().
Update docstring and assertion statements for GPG.__init__().
Fix unsanitised input for GPG() parameter 'keyring'.

 * Add assertions for checking that parameters 'verbose' and 'use_agent' are
   boolean values.
Create the gpghome directory if specified and if it doesn't exist.
Add note to remove the locale module later.
Fix problem in function _is_file() to except TypeError if given None as input.