Neighborhood concepts ===================== Think about usability when precalculating offset : * calculating before iterating * have an image and many Neighborhood * is image_with_neighborhood a good thing ? * is neighborhood_with_image a good thing ? * have the index be calculated lazyly and cached ?