I think the morphology interface needs to be standardized:
 - binary dilation/erosion/opening/closing take a "structure" argument, whereas their grey equivalent take size (has to be a tuple, not a scalar), footprint, or structure. (I'm not clear on the difference between "footprint" and "structure" in any case?)
 - a scalar should be acceptable for size, equivalent to providing that same value for each axis.
 - for binary dilation/erosion/opening/closing, the structuring element is optional, whereas it's mandatory for grey. I think the same default should be possible (square connectivity of 1) for grey morphology operations.
 - other filters should also take that default value where possible.