func (h *Hitch) UseHandler(handler http.Handler) {
	h.Use(func(next http.Handler) http.Handler {
		return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
			handler.ServeHTTP(w, req)
			next.ServeHTTP(w, req)
		})
	})
}
UseHandler registers an http.Handler as a middleware.
package hitch
import (
	"net/http"
	"github.com/julienschmidt/httprouter"
)
type Middleware func(http.Handler) http.Handler
type Hitch struct {
	Router     *httprouter.Router
	middleware []Middleware
}
func New() *Hitch {
	r := httprouter.New()
	r.HandleMethodNotAllowed = false  
	return &Hitch{
		Router: r,
	}
}
func (h *Hitch) Use(middleware ...Middleware) {
	h.middleware = append(h.middleware, middleware...)
}