Add support for holding the volume name in the pull_volumes table.
Wrap comicvine data fetch in a try/except to handle api failures better.
Extend sys.path when running under calibre-debug so that modules
installed in user home directory are available.
Access calibredb fields directly rather than using the very slow
get_data_as_dict
Factor out comicvine functions into separate module.

Update pull-list to retry on api failures to workaround occaisional flakiness.
Include timestamp in log format
Handle bad calibre IDs better during stream identification.
Remove add action as that is now covered by pull-list.py

Remove option to skip the pull, as without the add action that is all
this script now does.

Allow script to be run sharded.  Experimentation with threading didn't
really show much of a performance improvement.  New behaviour allows you
to run a job for just a subset of volumes.  You can then run a number of
these jobs independently.

I am running this using a crontab to run it once an hour, with 24
workers and processing shard $(date +%H) (i.e. during a 24 hour period
all volumes will be updated).  This means that my pull database is
locked for approx 1 minute per hour rather than 16 minutes all in one
go.
Make Volume type available via cvdb

Include the cover_date in the data fetched as well as the store_date.

cover_date is much more reliably filled in than store_date.  When
checking issue dates use cover_date if store_date is not available to
give an approximation.

Add some more debugging messages regarding date based actions (e.g.
termination of result processing due to issues being too old)

Move missing issue reports from STDERR(logging) to STDOUT(print)