Ensure consecutive display order of images

Issue #855 is caused when deleting the middle of three product images in
the dashboard. A quick workaround is to renumber the image order values
when deleting an image. Eventually, this should be readressed as part of
issue #856.

This commit is the squashed version of #1429.

Overide delete() on AbstractProductImage.

Ensures the display order is always in consecutive order.

Cleans up after TestProductImages  is run.

Fixes #855.
Closes #1429.