Правильно ли я пониманию концепцию асинхронности: в случае getLocalUsers мы оборачиваем данные в обзервабл, данные которого текут по своей трубе. в случае getRemoteUsers, метод get возвращает json, мапит его на юзеров, и опять же толкает в свою пайпу. на втором конце(на стороне консьюмера) мы эти данные субскрайбим то есть говорим мол выполни то-то когда все данные прийдут?