Improve tezos crypto namespace
Context
tezos-crypto has a lot of modules, not all of them meaningfully named (looking at you S). In addition, Tezos_crypto is included in TzPervasives which is opened everywhere.
This MR removes the inclusion from TzPervasives and removes all the -open Tezos_crypto from dune files.
Fixes #3875 (closed)
Instructions for reviewing
Reviewing this MR can be difficult due to the sheer volume. Although most of the diff is just adding Tezos_crypto. to qualify some modules. With that in mind, you can use the two following commands to generate two different diffs: a full one, and one that only has the Tezos_crypto. changes. Comparing the two diffs can help you.
$ git diff $(git merge-base HEAD master) > /tmp/diff-with-master-plain
$ git diff -G"Tezos_crypto." $(git merge-base HEAD master) > /tmp/diff-with-master-only-qualification
Edited by Raphaël Proust