Just from looking at the code (didn't test it), I would say the problem is that Tempodi is SHELLing out the other instances, which executes every instance in its own context.
As far as I know COMMON SHARED does only pass the variables when CHAINing from one to the other module, or maybe RUNing too, but definitly not SHELLing.
EDIT:
Nope, as per the Wiki, only CHAIN will pass COMMON SHARED variables.