implemented matrix multiplication, added tests