1. A processor-accessible computer readable device comprising processor-executable instructions stored thereon that, when executed, direct a device to perform a method comprising: converting a plurality of programs into corresponding intermediate language programs, the plurality of programs being written in different programming languages but according to a common language specification; exposing resources of an operating system or an object model service via application program interface (API) functions of a program interface layer to the plurality of intermediate language programs, the program interface layer to receive calls to the API functions from the plurality of intermediate language programs, wherein one of the API functions communicates in a first form and another of the API functions communicates in a second form that is incompatible with the first form; providing a common language run time layer that hands calls to the API functions of the program interface layer by the plurality of intermediate language programs to the operation system or the object model server for execution; creating a plurality of namespaces to organize the API functions of the program interface layer, the namespaces including a first namespace that includes API functions of the program interface layer that enable identification of particular physical locations, a second namespace that includes API functions of the program interface layer that are expected to be used by the first namespace; and converting a communication associated with an API function of the program interface layer from the first form to the second form.