Add pickle support to search objects
Add pickle support to search objects

Make the search object a custom pickleable iterator instead of a
generator, so that it can be pickled to resume later.

Added bonus: if calling next() on the iterator fails because of a server
error (for example rate-limited), you can call next() again, the object
is not broken.

OrganicIrradiation/scholarly