First working model of ElemWise matrix multiplication, rebased.
Merge branch 'ElemWise-squashed' into ElemWise.(Rebased 9 commits).