1. few simultaneously visible regions with modules/views/screens loaded into
In your ShellViewModel create several public properties, each representing one of your regions. In your ShellView, create ContentControls, one for each of the properties in your ShellViewModel. Name these ContentControls the same as the properties.
2. navigation in these regions.
Each of the properties representing a region can itself be a Conductor. This allows it to have independent navigation of the other regions. Make sure that in your ShellViewModel you cast each of these conductors to IActivate and call the Activate method.
Otherwise the navigation within each region will not happen. (As an alternative, you can grab the code from the full version of Caliburn for Conductor.WithCollection.AllActive, and use this as the base for your ShellViewModel. This would allow you to open
the child conductors and automatically make sure they are all enabled without having to do it manually. The conductor classes from the two frameworks are fully compatible. CM just doesn't have the AllActive version for size reasons.)
3. Messages between regions/modules
Use the EventAggregator.
This is really general guidance without knowing the specifics of your application. There are several ways to do this with CM.