Cache allows script to quit early

- cache will quit early if already downloaded
- displays [ downloaded / filtered ] counts
- less .delay() if file exists