branchcache: store filtered hash and obsolete hash independently for V3
This will avoid the bug covered in tests/test-branches-obsolete.t when we stop
storing all heads explicitly in V3.
# So GitLab doesn't think we're using tons of Perl*.t -linguist-detectable