Functions demonstrate lexical closures.  The matrix object created by makeCacheMatrix
holds a matrix and its inversion after cacheSolve is applied.  If the object's inversion has already been calculated, cacheSolve will retrieve its inverse from the cache.