An implementation of ArjunaOTS::ArjunaFactory.
Problem: garbage collection! If a user keeps a reference to a Control, say,
then we will delete the implementation object when the action terminates.
However, the user's reference is still valid, only the thing it points to is
no longer there. In the remote case this is ok as the Orb will raise an
exception. In the local case, however, the program is likely to crash when it
tries to dereference freed memory! There's nothing we can do about this
(unless we decide never to garbage collect!) apart from warn against using
Control, Coordinator, and Terminator explicitly - if you go via Current then