Initial implementation of middleware support, fixing `headers()` by removing some when sending a 500+ status code, created `use()` & `run()` for middleware hooks & execution
Minor tweaks
Fixing `respond()` when generating an etag on a `null`/`undefined` response body, implemented 3 & 4 arity signatures of middleware with default error & empty response if a middleware doesn't terminate the response
Adding basic path matching for middleware
Adding support for `{}.handle` middleware shapes
Merge pull request #277 from avoidwork/Middleware

Adding middleware support