Assignment 2 - Matrix Inverse Cache

Made changes per Assignment 2 instructions, creating 2 functions which
will (1) create a matrix that can cache its own inverse and (2) return
the inverse of that matrix, either by returning it from the cache or
solving for it if it is not present in the cache.