func CombineServlets(servlets ...Servlet) Servlet {
	return InlineServlet(func(r *mux.Router) {
		for _, s := range servlets {
			s.RegisterRouting(r)
		}
	})
}
CombineServlets combines all Servlets into one, without other modifications.
Great for splitting the dependency managements into smaller servlets.
package srvutil
import (
	"net/http"
	"github.com/gorilla/mux"
)
type Servlet interface {
	RegisterRouting(r *mux.Router)
}
type InlineServlet func(r *mux.Router)
func (m InlineServlet) RegisterRouting(r *mux.Router) {
	m(r)
}
func FuncServlet(path string, handler http.HandlerFunc) Servlet {
	return InlineServlet(func(r *mux.Router) {
		r.HandleFunc(path, handler)
	})
}
func HandlerServlet(path string, handler http.Handler) Servlet {
	return InlineServlet(func(r *mux.Router) {
		r.Handle(path, handler)
	})
}
func PrefixServlet(s Servlet, path string) Servlet {
	return InlineServlet(func(r *mux.Router) {
		s.RegisterRouting(r.PathPrefix(path).Subrouter())
	})
}
func UseServlet(s Servlet, mwf ...mux.MiddlewareFunc) Servlet {
	return InlineServlet(func(r *mux.Router) {
		r = r.NewRoute().Subrouter()
		r.Use(mwf...)
		s.RegisterRouting(r)
	})
}