model.nodes(concept) and model.getRootNodes shall report read access to model nodes. For transient models, canFireEvent tells false (which seems to be a performance hack, as there's no evident reason why transients shall not send such notifications. that's why it's made explicit), but the way incremental dependencies are built (dependencies are collected throughout complete generation phase, not on a step-by-step basis) suggests we need to detect model.nodes(concept) and model.getRootNodes as read access.
Regenerate structure, script, editor, action, generator and descriptor aspects to denote access to model nodes (thanks to read notifications now being dispatched from smodel.getRootNodes)
Different MPSPlugin port for 3.0 and 3.1
Merge branch '3.1/mikev/test'