code: func Register(v interface{}, args ...string) {
  	var (
  		t = tryDereference(v)
  		p = path.Join(args...)
  	)
  	mu.Lock()
  	defer mu.Unlock()
  	if et, ok := registry[t]; ok {
  		if et != p {
  			panic(errors.Errorf("type registred with alternate path %q != %q", et, p))
  		}
  		return
  	}
  	registry[t] = p
  }
docs: // Register a type with the base url of the type