code: public static <T> Observable<T> deferFuture(Func0<? extends Future<? extends Observable<? extends T>>> observableFactoryAsync) {
          return Observable.defer(new DeferFutureFunc0<T>(observableFactoryAsync));
      }
docs: Returns an observable sequence that starts the specified asynchronous
  factory function whenever a new observer subscribes.
  @param <T> the result type
  @param observableFactoryAsync the asynchronous function to start for each observer
  @return the observable sequence containing values produced by the asynchronous observer
  produced by the factory