In the not so distant future when finding block in a somewhat decent time requires several TH/s The creation of a new successful pool will be extremely difficult and ineffective. Do you think we will need a service which can join multiple smaller pools into a single larger pool to help control the variance?
Yes. (Semi-)decentralized pools like p2pool should work nicely as the larger pool.