Yeah - I'm a little unenthused about this... but I actually think we need to completely re-build this guy around a module loop, not a provides method loop.  :/