As an idea for (what I think is) better syntax:
cluster -> mod
"small module" / the keyword Rust uses
clusterprivate -> internal
(the old) internal
-> external
All old "large" modules contain a single implicit "small" module
This means changing the meaning of internal
is not source breaking (I think)
New "large" modules can contain several "small" modules