Make adapted functors' mask requirement transitive
- propagate the need for a mask from the ('inner') functor that is being adapted to the adapted ('outer') functor, instead of just having the outer functor always require a mask (which in practice generates a wrapper to require a mask, which then requires another wrapper to remove it again)
Edited by Gerhard Raven