Hello Shaun !
I actually use three modules, all of them share 80% of the code ( models and controllers ) and each one have it's own views. The code is incluided in a "libs" folder and inside is the common com/package/ structure, this way you share code easily, I add them as Global Library in the platform settings, the same as I do with ANE's.
I also share resources ( icons, assets, sounds ... ) and ANEs, but uses different .plist or google-services.json files for each module. In this case you simply structure your folders and set them in the module "Files and folders to packge" section under your platform tab.