Recover from DNS lookup failure

After a DNS lookup failure, assume there is no internet connection.

This can occur in two places. If it occurs when sending a HEAD request
against a version of an item in the application cache, mark the
internet as unavailable and use the cached item. If it occurs when
downloading an item, mark the internet as unavailable and look for the
item in the buildpack cache.

[#66409480]
Merge 66409480-recover-from-dns-lookup-failure to master

[Completes #66409480]