final version with all tests, testing not only inverse matrix multiplication but also different functions of makeCacheMatrix like get and set.