Updated with comments for the main section and for functions cacheSolve and isMatrix