make each route separate middleware

- Routers have a middleware stack
- Route has a middleware stack