an idea for the edit part
move all the 'rest' of index to the route and module libraries, implement the redirect and not found errors, add the top navigation, first bit for passing the rest of the url to the module requesting it
better separation between module and route.