1. A method for implementing a software application in a networked desktop virtualization environment, the desktop virtualization environment comprising at least one desktop virtualization server computer and at least one desktop virtualization client endpoint device, both in communication with one another over at least one network, the method comprising: a. structuring an article of software with a plurality of internal software elements and interfaces among them; b. installing a first instance of the article of software on the desktop virtualization server computer, wherein the desktop virtualization server computer is of at least one type of server computer; c. detecting at least one characteristic of the desktop virtualization server computer; d. in the first instance of the article of software, selectively enabling a first set of the internal software elements and disabling the remaining internal software elements based on the results of the detecting on the server computer; e. installing a second instance of the article of software on the desktop virtualization client endpoint device; f. detecting at least one characteristic of the desktop virtualization client endpoint device, wherein the desktop virtualization client endpoint device is of at least one type of endpoint device; g. in the second instance of the article of software, selectively enabling a second set of the internal software elements and disabling the remaining internal software elements based on the results of the detecting on the desktop virtualization client endpoint device; and h. establishing an association of the second instance of the article of software with the first instance of the article of software, wherein, for a first particular internal software element and a second particular internal software element that are architecturally linked within the article of software by an interface, if: i. the first particular internal software element is enabled in the first instance of the article of software but not enabled on the second instance of the article of software; and ii. a second particular internal software element is enabled in the second instance of the article of software but not enabled on the first instance of the article of software, then the first particular internal software element interfaces with the second particular internal software element over the at least one network.