Changed the middleware signature.  Added in a handler that allows the handler to use the raw underlying golang http methods.