Array.slice creates a new array, so the performance of this will be sub-optimal.  Also, I'm not sure using arrays instead of passing a function to a "use" method is as natural.  I think we can find another way to accomplish this.