downloader seems much better. next step: de-couple downloading and pre-processing