Adapt the VTK image diffing to work with AvogadroLibs

Create a Qt derived GLWidget, show it, render and capture the image.
Then duplicate the logic to compare with a baseline image (as used in
VTK) and produce a gamma shifted diff on failure. Use the Dart tags to
specify the results and upload the images upon failure.

Still to do - handle multiple baseline images.

Change-Id: I73bd085df7cbafa1c2a7cb858a7f2b75ee5ab00c
If no image is found, upload the image produced

This at least allows the reviewer/developer to see the image produced.

Change-Id: I61748c64f40934cc80d4aa3f39071f90bbe461ed
Moved the image regression code to a class

Centralized the logic, documented it and generalized so that we can more
easily reuse the code for different tests.

Change-Id: I116c7e2e59188c1fb06be17a5c9dd06839d42664
Convert the test to use the CMake test driver

This allows for multiple tests in the same executable, called with the
test name as the first argument.

Change-Id: I55fbf368b70acdb4a4914f8e75b9d80cec9a7a55
Merge topic 'image-regression' into master

de9fe57b Convert the test to use the CMake test driver
9fe202c7 Moved the image regression code to a class
938f7c47 If no image is found, upload the image produced
ab8bae5b Adapt the VTK image diffing to work with AvogadroLibs