1. A computer-implemented method of searching for a class for loading into a data processing system, the computer-implemented method comprising: a processor defining a hierarchical classloader architecture for use in a data processing system, wherein the hierarchical classloader architecture comprises a runtime/framework classloader and an application classloader, wherein the runtime/framework classloader is a parent to the application classloader, and wherein a request for a class made to the application classloader is routed to the runtime/framework classloader before the application classloader searches for the class within its own scope; the processor refactoring classes that are supported by the runtime/framework classloader into bundles, wherein the bundles are units of modularized resources, wherein each bundle has a separate bundle classloader for accessing resources within the bundle, and wherein bundle classloaders communicate with one another in a network bundle architecture as peers rather than through a parent-child relationship found in the hierarchical classloader architecture; the processor establishing a gateway bundle classloader within a gateway bundle, wherein the gateway bundle comprises the bundles that have been refactored from the classes that were supported by the runtime/framework classloader, wherein the gateway bundle classloader is a parent to the application classloader, wherein the request for the class made to the application classloader is routed to the gateway bundle classloader before the application classloader searches for the class within its own scope; the processor receiving a request for a requested class, wherein the request is sent from the application classloader to the gateway bundle classloader in response to the application classloader receiving the request from an application; and the processor transmitting the requested class from the gateway bundle classloader to the application classloader for loading into the data processing system.