Can we rename this poolStateChangeObservable and PoolStateChangeEvent? When this method is invoked on RxClient, it will be confusing what state change is about.