Add BoundaryCursor and CrossNeighborhood

This cursor iterates over image locations that are on the boundary of a
BooleanType image using an input Shape as a neighborhood.  

Add CrossShape, which is a nice shape for this purpose.