How is scan rate / execution order determined when using "Module Blocks"

I ran into a case last week where there was a module, that contained a module block ref, that contained another module block. Besides being a major "no-no pet-peeve" of mine, I feel that it goofs up the scan rate and/or execution order of the modules a bit. Does anyone know for sure what happens in this case? Can anyone elaborate on the "shared" and "private" options when using this feature?