implemented matrices and shapes

- introduced Matrices
- created shape primitives Sphere and Cube
add substitute for matrix multiplication operator overload