Mulgen

as per #54 

On all of these, you can have a 

dataTmp := w.mat.Data[r*w.mat.Stride: r*w.mat.Stride + bc]
and then have dataTmp[c]. Probably doesn't save that much given the rest of the inefficiencies, but may as  well.