Add caching
Update READEME