Yes, MagicDraw supports both read-only and read-write modes for module usage. Usage of read-write modules is a bit tricky, especially if we have modules nested in one another and with circular dependencies between one another. When partitioning always refer to Modules dialog (Options>Modules) as your friend and guide.
Yes, module can be loaded/unloaded by the user at (almost) any time during the work process. Also module usage has a parameter which governs if module should be loaded at project load time: "always load" means module is loaded with project "auto-load" and "auto-load with prompt" module is not loaded, but MagicDraw tries to guess when user would need module contents (e.g. when user runs search in the entire model) and loads module then.
"manual load" means module is not loaded - user can load it later.