Make controller smaller, remove unused code.
Move creation of demand object into its own factory.
Reduce npath complexity in repository and move parts into named methods.
Allow editors to select specific events to display.
Therefore add new necessary demand and setting for events and respect
them within repository.
Relates: #8092
Allow editor to reference TYPO3 page records from events.
E.g. used to provide further internal information links.
Also those pages are resolved via DataProcessing.
That allows integrators to be 100% flexible to resolve those page info.
By default a menu is generated and media is resolved.
Also validation is ignored, as this improves performance and allows to
use the new class as injected property without validation fails.
Models are not managed via frontend and therefore don't need validation.
Relates: #8092