Be able to skip compiling fermion instantiations altogether
Fermion instantiations get expensive to compile at large $N_c$. This PR adds the facility to skip their compilation altogether, by passing --disable-fermion-instantiations at configure time. This substantially speeds up compilation, going from running make -j32 to having libGrid.a in two minutes on Tursa.
This is beneficial to those working on pure gauge problems, or optimising gauge actions, as it avoids needing to wait for unused instantiations to compile. It can also speed up installation of tooling that instantiates all the fermions that it needs to make use of (e.g. because it works at multiple values of Nc).
Guards are placed around all tests/benchmarks/examples making use of fermion instantiations such that make exits successfully, although obviously not all generated executables are functional.