Rendering and views
Rendering(o => …) adds code defaults, selectors and template kinds to the site's rendering options
(chapter 8). Views() adds the views, controllers and Razor Pages compiled
into the module, so a module built as a Razor class library can render with its own views, such as
Views/Shared/EventPage.cshtml. The site's _ViewStart gives them the site's layout. The host still
adds the MVC or Razor Pages rendering.
A module's pages get their URLs from the site's URL manager (chapter 6). On
a site whose URLs follow the page tree, a page needs a place in the tree, hence ParentPageId. A page
type never declares Parent or Children of its own: every IPage has them.