rust: use new revlog configs in all revlog opening code
This centralizes the more complex logic needed for the upcoming code
and creates stronger APIs with fewer booleans.
We also reuse `RevlogType` where needed.
# Tests to be disabled when building and testing in the Nix sandbox.
# tests enforcing "/usr/bin/env" shebangs, which are patched for nix
test-run-tests.t
test-check-shbang.t
# doesn't like the extra setlocale warnings emitted by the nix bash wrappers
test-locale.t