Implement std::tuple_element for MultiTypeBlockVector and Matrix
Both behave like std::tuple, and currently even inherit from std::tuple. According to
https://en.cppreference.com/w/cpp/utility/tuple_element
we are allowed to specify std::tuple_element for our own types.