Single router refactoring

This PR removes the logic to create a router for each version splitted by the first part of the URI (e.g. `/v1`). This also makes it possible to serve middlewares on the root URI with a welcome message.