Cache whether a head request succeeds for a given URL

When loading alignments we often making multiple requests in succession, it's time consuming to have to try HEAD for each one