added proxy to load classes with java ServiceLoader
added tests and bug fixes