Should we add `a * b` to ndslice for 1d vectors? Discussion at https://github.com/libmir/mir-algorithm/issues/91
Unless it's always just simple element-wise, make it a different type. N-dimensional rectangular data structures are only sometimes matrices.
Also, if you did two different types I have concerns about code that mixed the two, it would become quite unclear which ones were matrix operations and which were element-wise.