AST-987 Use AVX function multiversioning
This is a proof-of-concept to make it possible to create a drop-in replacement for the MC2x2 class that uses AVX2 or not. The selection for AVX2 is done during compilation:
- No AVX2 available it's not used. (That might be improved later.)
- AVX2 is available:
- A non-portable build always use AVX2.
- A portable build defer the decision to runtime.
The runtime selection uses function multiversioning.
Closes AST-987