webserver: Prefetch pre-existing files if existing ones are broken
webserver: Prefetch pre-existing files if existing ones are broken

PostgreSQL seems to sometimes generate files to pg_wal directory that
don't match the contents of what should be in a file with such name. The
reason why this happens is unclear but based on investigating log files
it does not seem like PGHoard would be responsible for the creation of
these files or that it would otherwise have returned invalid data at any
point.

Earlier logic of skipping prefetch based on the existence of supposed
target file resulted in bad performance because when the file was really
being served the target file couldn't be utilized. Make the same check
during prefetch phase so that prefetch is performed if local data will
not be useful in serving the possible upcoming file request.

Also added some logging statements that are useful in determining the
sequence of events when unexpected data is encountered.

ohmu/pghoard,ohmu/pghoard,saaros/pghoard