RxJava 1.x には Observable の static なインナークラスとして Observable.OnSubscribe
RxJava 2.x ではインナークラスではなく ObservableOnSubscribecall(Subscriber<? super T>)ではなくsubscribe(ObservableEmitter<T>)になっています。
Observable.OnSubscribe<T>#call(Subscriber<? super T>)のなかで、unsubscribe したときにリソースの開放やリスナーの解除などをするフックを作っていた場合、RxAndroid のMainThreadSubscriptionでフックすることになります。そしてそのインスタンスをSubscriber<? super T>#add(Subscription)に渡します。
これを RxJava 2.x に移行するとき、MainThreadSubscriptionはMainThreadDisposableに、Subscriber<? super T>#add(Subscription)はObservableEmitter<T>#setDisposable(Disposable)に書き換えます。