docs: function asyncPluck(arrPromise, property) {
      var args = argsToArray(arguments, 1);
      return asyncArray(when(arrPromise).chain(function (result) {
          var prop = property.split(".");
          result = normalizeResult(result);
          return asyncArray(prop).forEach(function (prop) {
              var exec = prop.match(/(\w+)\(\)$/);
              return asyncArray(result).map(function (item) {
                  return exec ? item[exec[1]]() : item[prop];
              }, 1).chain(function (res) {
                      result = res;
                  });
          }, 1).chain(function () {
                  return result;
              });
      }));
  }