2.x Implement composite interest index as an aggregate of atomic indexes.

I still keep InterestNotificationMultiplexer, as it allows us to dynamically adjust notification stream. During interest upgrade, we do not want to resend data of atomic interests that are still part of the upgraded interest set. Swapping composite interest subscriptions would sent everything again.

Can we eliminate the registry dependency here?

Instead can we just say `compose(Index<T> current, Index<T>... newIndices);` or better still if we provide a method in `Index` itself to compose/upgrade which underneath may be uses this method.