The reason why is not recommended to place this kind of logic in the shell, is because your application will be losing the approaches Prism tries to solve. As documentation shows:
“…The guidance is designed to help architects and developers achieve the following objectives:
· Create an application from modules that can be built, assembled, and, optionally, deployed by independent teams using WPF or Silverlight.
· Minimize cross-team dependencies and allow teams to specialize in different areas, such as user interface (UI) design, business logic implementation, and infrastructure code development.
· Use an architecture that promotes reusability across independent teams.
· Increase the quality of applications by abstracting common services that are available to all the teams.
· Incrementally integrate new capabilities.
Therefore, as you separate your applications in modules, like Guido recommends, you might benefit with features such as:
You might find useful the following link of Prism documentation:
Chapter 4: Modular Application Development
I hope you find this information useful.