A proposal for multiple masks (mainly for Juan, but suggestions are wellcome... release 1.6 or higher):
The new mask system should allow to add an ilimited amount of images that will act as masks. These images should be operated in some of predefined ways, all the same operator (for more customized options, standard PixelMath procedures should be made to create the composite mask), to create a composite mask that is stored as a temporary file.
This composite mask should be linked to all the operand images (individual masks) and track if there has been any change to them. If so, next time a process is applied to the masked image, the composite mask should be recalculated. If there is no change to the individual masks, no recalculation is needed, of course.
To operate the images we should use these standard procedures: Min, Max, Median, Multiply and Screen.
What do you think?