move to separate package; add rx adapters