func (s *Server) ListenAndServe() error {
	if s.proxy == nil {
		s.proxy = newProxy()
	}
	return http.ListenAndServe(s.Addr, s.proxy)
}
ListenAndServe calls the http.ListenAndServe function
with the proxy handler
package proxy
import (
	"net/http"
)
type Server struct {
	Addr  string
	proxy *proxy
}