I initially wanted ShakespeareAnalyzer to be concerned only with the xml. I think a good compromise in the meantime would be to make these names a little clearer. "Downloader" is too loaded a term for what happens.