Matrix class for performing the following matrix operations:
- addition
- subtruction
- multiplication (also multiplication by a vector and multiplication by a number)
- calculating scalar product
- transpose of a matrix
- inverse of a matrix
- creating vectors from row or column
Supports integer, double, and float data types. Allows loading matrices to/from a text file as well as creating a matrix with given dimensions.