Abstract Service Loader class to wrap java.util.ServiceLoader