code: function(mm) {
                  if (!done[mm]) {
                      // Y.log(name + ' provides worker trying: ' + mm);
                      done[mm] = true;
                      // we always want the return value normal behavior 
                      // (provides) for superseded modules.
                      lang.augmentObject(o, me.getProvides(mm));
                  } 
                  
                  // else {
                  // Y.log(name + ' provides worker skipping done: ' + mm);
                  // }
              }
docs: use worker to break cycles