Non blocking future to observable implementation.

This should be kept as ReactiveX I guess?