They are needed from inside the downloader, but I think the only reason they are public is so I can use them in integration tests.