A colleague of mine helped me find the answer to this question. First, though, I noticed an error in the for loop. I had > instead of <. That didn't help. :)
The concept with the code was correct. The issue was scope. If you look at the jsfiddle, you'll see that the whole thing is in an enclosure, including the functions I was trying to call. So, there was no way window had access to the functions. We ended up making a couple simple changes.
First, along with module.push('crumbs'), or whatever the function name is, we added:
functions.crumbs = crumbs;
Then instead of using window[module[i]], we used
functions[module[i]]
Without the enclosure, window[module[i]] would have worked just fine.