function next(params, curFn) {  
         return [apply(params, curFn)];   
      }
Compose zero or more functions:

   compose(f1, f2, f3)(x) = f1(f2(f3(x))))

The last (inner-most) function may take more than one parameter:

   compose(f1, f2, f3)(x,y) = f1(f2(f3(x,y))))