DestroyableClassLoader is a mixin interface for a ClassLoader that add a destroy method to propertly cleanup a
classloader then dereferenced by the server.
A MultiParentClassLoader is a simple extension of the URLClassLoader that simply changes the single parent class
loader model to support a list of parent class loaders.
The NamedClassLoader is a simple extension to URLClassLoader that adds a name and a destroy method that cleans up
the commons logging and JavaVM caches of the classloader.