I'll try to explain myself better. What I want to do is this:
1) foreach file that I have in the list, kick off the appropriate number of children
2) wait for all of the children to return before I move on to the next file.
It is the waiting for all of the children to return that is getting me. Maybe I'm just thinking to linearly about this...