Add stale-while-revalidate support to network stack.

This changes adds a load flag that blink will set to request
resources that are stale from the network cache. Upon receiving this
flag and returning a stale resource the network stack will set a
timeout of 1 minute for the resource to be validated. During this
period the stale resource can continue to be returned but after that
if not revalidated the resource is considered invalid.

A large portion of this change is reverting
crrev.com/75221e53b71cc5eb37cbfb957124025259aa5dab

BUG=348877

Change-Id: I889f6e4c9b59b95bc26ce3a8f8f9d9c15da0ed71
Reviewed-on: https://chromium-review.googlesource.com/1085850
Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: David Benjamin <davidben@chromium.org>
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566258}
10 files changed