func startShutdownServer(port int) {
	mux := http.NewServeMux()
	mux.HandleFunc("/", StatusHandler)
	mux.HandleFunc("/shutdown", ShutdownHandler)

	server := negroni.New()
	server.Use(negroni.NewRecovery())
	server.Use(logger.NewMiddlewareLogger(log))

	server.UseHandler(mux)

	log.Info("running, shutown at port: %d", port)
	graceful.Run(fmt.Sprintf(":%v", port), 0, server)
}
func startServer(webroot string, port int, env string) {
	mux := http.NewServeMux()

	mux.HandleFunc("/", IndexHandler)
	mux.HandleFunc("/status", StatusHandler)
	mux.HandleFunc("/ping", PingHandler)
	mux.HandleFunc("/reset", ResetHandler)

	server := negroni.New()
	server.Use(negroni.NewRecovery())

	server.Use(logger.NewMiddlewareLogger(log))

	server.Use(NewProtoMiddleware(env))

	server.Use(negroni.NewStatic(http.Dir(webroot)))

	server.UseHandler(mux)

	log.Info("starting server at port: %d, root: %s", port, webroot)
	graceful.Run(fmt.Sprintf(":%v", port), 0, server)
}