add image diff to changelog
this is a port of something currently done in my 'check-compose'
tool which produces the 'compose check report' emails. I think
it makes sense to do it here instead. It's pretty simple: we
consider the 3-tuple (subvariant, type, arch) for an image to
be a unique identifier for the image, and we compare the images
in each compose and produce 'added_images' and 'dropped_images'
from sets of the identifiers. We use the same identifier run
through " ".join() as the human-readable identifier and include
just a count of added/removed images in the summary, the id for
each added and removed image in the brief log, and the id plus
the path for each added and removed image in the verbose log.
I tried to future proof it a bit, in case we need to change the
identifier format at any point, the idea is that we can just
change the `image_id` method and the rest of the code should
keep working. At first I just got the tuples and stored those
as added_images and dropped_images, but then it's a bit messy
in future if we change the identifier format. It's also set up
such that we can also add check-compose's 'expected images'
feature quite easily using the `get_images` dict (planning that
as a separate PR).
Fixes #3
Fixes #10