Memoized cache inversion

Added functions to create a cached matrix and return a cached inverse
if present or compute and cache it