collector's collect is now a generator, so articles are clustered in groupings by source, reducing memory usage