A computer program product, for computer systems each including a processor and a memory, the computer program product for enabling an application programmer to construct a plurality of application programs for communicating with a plurality of remote machines of a plurality of remote machine types, each of the remote machines having remotely accessible data and remotely performable operations, th