Few more changes to the API.

1) Eliminated PoolStateChangeListener for an Observer. The pool now uses Observable to publish the state change events.
2) Added way to retrieve PoolStats and subscribe to change events from RxClient. This is the only way to access the pool. The reason why connection pool instance is not exposed from the RxClient is that it has write operations too.