Add imagemagick engine

I find the diffs imagemagick produces much easier to work with.

See http://stackoverflow.com/questions/5132749/imagemagick-diff-an-image for examples.

This engine behaves a bit differently than the perceptualdiff engine. It leaves the new screenshot around only if there are differences. When there's no differences, an existing differences image from an earlier run is deleted. It also uses cmp at first to quickly skip unchanged screenshots.
Doh, of course I should just use the threshold that is passed to `assertSameFile`.