add rake tasks
improve cache by using singleton and update readme.md