added code to cachematrix, still need to comment and verify its working