A modified proxy object implements one or a multiple versions of an
interface, and provides a common, multi-version interface. The common,
multi-version interface is comprised of a union of all the methods of all
versions of the interface that are supported by the modified proxy
object. Since the common, multi-version interface allows an object to
access the functionalities supported by the multiple versions of the
interface, a subsystem programmed to create and use the modified proxy
object(s) only needs to use the common, multi-version interface provided
by the modified proxy object(s) to communicate with multiple, different
versions of remote subsystems.