Fix b/10302420: Archive feeds to a local directory, if configured.

This change adds a new optional configuration property, feed.archiveDirectory.
If specified, it should be a pathname to a directory in which the all
feeds successfully and unsuccessfully sent to the GSA are archived.
Failed feeds are tagged with "FAILED" in the archive feed file name.
The feed archiver is made available to the adaptors via the AdaptorContext,
So graph traversers that return additional docids via getContents() can
archive those as well.

Code Review:
9 files changed