Extract loader method resolution into separate class
Pull interceptor out into its own file, and add some javadoc comments
Tidy up LazyFactoryTest inner classes
Support (overridable) class-level loader methods