Router extensions fix

Fix `Router::extensions()` being incorrect after scoped routes are connected. By storing and propagating the extensions in the RouteCollection, we can correctly handle Accept header based content-type negotiation.