code: function reactSet(requests, effects, retryStrategy) {
          return reactWithLatest(function (state) {
              var requestInstances = requests(state);
              var identifiableRequests = [];
              requestInstances.forEach(function (request) {
                  identifiableRequests.push({ id: request, request: request });
              });
              return identifiableRequests;
          }, function (request, _, scheduler) { return effects(request, scheduler); }, retryStrategy);
      }
docs: State: State type of the system.
  Request: Subset of state used to control the feedback loop.
  
  When `request` returns a value, that value is being passed into `effects` lambda to decide which effects should be performed.
  In case new `request` is different from the previous one, new effects are calculated by using `effects` lambda and then performed.
  
  When `request` returns `nil`, feedback loops doesn't perform any effect.
  
  @param requests Requests to perform some effects.
  @param effects The request effects.
  @param retryStrategy The retry strategy for the effects in case an error happends.
  @returns The feedback loop performing the effects.