code: func (r *registry) loadPlugin(pluginPath string, handlerType HandlerType, extraArgs ...string) {
  	if _, err := os.Stat(pluginPath); err != nil {
  		logger.Panicf(fmt.Sprintf("Could not find plugin at path %s: %s", pluginPath, err))
  	}
  	p, err := plugin.Open(pluginPath)
  	if err != nil {
  		logger.Panicf(fmt.Sprintf("Error opening plugin at path %s: %s", pluginPath, err))
  	}
  
  	if handlerType == Auth {
  		r.initAuthPlugin(p)
  	} else if handlerType == Decoration {
  		r.initDecoratorPlugin(p)
  	} else if handlerType == Endorsement {
  		r.initEndorsementPlugin(p, extraArgs...)
  	} else if handlerType == Validation {
  		r.initValidationPlugin(p, extraArgs...)
  	}
  }
docs: // loadPlugin loads a pluggagle handler