1. A method, performed with at least one processor, for developing a software module comprising support for multiple versions of an operating environment, the method comprising: determining a first set of references associated with a first version of an application operating environment; determining a second set of references associated with a second version of the application operating environment that is different from the first; associating a first class loader with the first version of the application operating environment; associating a second class loader with the second version of the application operating environment; encapsulating the first set of references, the second set of references, the first class loader, and the second class loader in a software module, wherein the second set of references are obscured from the first class loader; and providing at least one code base within the software module, wherein the at least one code base is compatible under both the first version of the application operating environment and the second version of the application operating environment.