Add a new verify_refname_available() function, which checks whether the
refname is available for use, taking all references (both packed and
loose) into account. This function, unlike the old
verify_refname_available(), has semantics independent of the choice of
reference storage, and can therefore be implemented by alternative
reference backends.
Use the new function in a couple of places.
Signed-off-by: Ronnie Sahlberg <redacted> Signed-off-by: David Turner <redacted> Signed-off-by: Junio C Hamano <redacted> Signed-off-by: Michael Haggerty <redacted> Signed-off-by: Jeff King <redacted>