There is "no need" for heterogeneity in cancers. This is a "humanistic" point of view.
Heterogeneity in cancers is (in a more than simplistic response) the "resultant" of a lot of distinct "biological pressures" (including increases rates in mutations as the "cancer becomes older in a given host").
I think that you should carefully read the attached articles (even if my response come very in late ...).