Story #1150: As a user, I can lazily fetch repositories
Follow up with Katello on their progress reporting needs for lazy content downloading.
Currently, when a task is dispatched to download deferred content units or to completely download a repository (as part of the lazy feature), the iterable of DownloadRequests is built as a list rather than a generator. This occurs so that we can report the total number of files Pulp is going to download before the download begins.
If it is acceptable to Katello, we could instead simply report how many we have downloaded so far, possibly with an estimated total number to download (from a `count` call on the deferred download collection or similar). This would decrease memory usage. If we decide to report progress differently than we are now, it would be good to come up with a general progress reporting framework using what is included in the step processing a base.