Invalidate cached item if HEAD response status is not NOT_MODIFIED. See
http://tools.ietf.org/html/rfc2616#section-9.4, if the new field values
indicate that the cached entity differs from the current entity, then
the cache MUST treat the cache entry as stale.
Add test to verify invalidation and update of HEAD requests
Simplification of merge
More sane construction of HTTPCache