Added VCR and more tests. Also added caching to limit the requests sent to the api.