William Duvall's inverse matrix caching function

This first of the pair of functions will accept a matrix as an argument.
Then create a special object that can is cached. The next function will
check to see if the inverse of the argument has already been calculated
if not it will calculate it. Then the function will return the inverse
of the matrix.
Revert "William Duvall's inverse matrix caching function"

This reverts commit bdf76872063d762ea04bfffe8a960bda2014fca1.
Updated cachematrix.