code: func NewSocket(path string) (s *Socket, err error) {
  	s = &Socket{path: path}
  	if err = openSocket(s); err != nil {
  		err = fmt.Errorf("open socket: %s", err)
  		s.err = err
  		return
  	}
  	return
  }
docs: // NewSocket will always return a new Socket.
  // err if nothing is listening to it, it will attempt to reconnect on the next Write.