Using Map and flatMap to return a single observable to wait on