Fix crashes in MemoryCache related to successful revalidation

If the same url is revalidated multiple times, the first revalidation may end
up being incorrectly left in an LRU list after it is deleted. This is because
we have an early exit in removeFromLRUList() when the resource's accessCount()
is zero, even though we unconditionally put the resource in an LRU list when
it is added to the cache. We increment accessCount for the new resources case
in add(), but not the successful revalidation case in replace().

(All of these bugs are most likely the same root cause, but it's not absolutely certain)
BUG=353035,352538,352444
TEST=MemoryCacheTest.MultipleReplace

Review URL: https://codereview.chromium.org/202243003

git-svn-id: svn://svn.chromium.org/blink/trunk@169463 bbb929c8-8fbe-4397-9dbb-9b2b20218538