Coursera programming assignment 2: new functions for caching the inverse of a matrix