cache matrix

Returns the inverse of a matrix. If the matrix doesn't change, it gets
the inverse from the cache