Remove FITSImage.__del__() – it does nothing (pass statement)
Use the %r formatting character inside the __repr__() methods
Remove FITSImage.__str__() — it defaults to __repr__()

There is not point in defining the __str__ method and making it return
__repr__, since that is exactly what Python does if the former is not
defined: the object behaves as though __str__ = __repr__.
Improve docstring of __repr__() methods
Add FITSImage.__ne__()

The Python documentation urges us to write __ne__() when __eq__() is
defined, since there are no implied relationships among the comparison
operators (the truth of x == y does not imply that x != y is false,
for example).
Add unit test for FITSImage.__eq__() and __ne__()
Add unit test for FITSImage.__repr__()
Add getter for LEMONdB.mosaic attribute

We are going to use a new table, RAW_IMAGES, to store as a blob entire
FITS files. The ID must refer to that of the file in the IMAGES table.
As the reference frame is stored in its own table, RIMAGE, the special
value zero is used as the ID for its FITS file.
Add setter for LEMONdB.mosaic attribute
Add unit test for LEMONdB.mosaic getter and setter
Store the reference FITS image in the LEMONdB

Use the LEMONdB.mosaic attribute setter to store the reference FITS
image (that on which sources are detected, and from which offsets are
calculated) in the output LEMONdB. In an ideal world we would store in
the database all the reduced images, but in practice this would easily
scale the size of the LEMONdB up to the hundreds of gigabytes in the
case of long campaigns. The reference image, being the only one we
need to display a finding chart in the GUI, is enough for now.
Add 'Finding Chart' button to the toolbar

The button does not yet do anything, although it already becomes
enabled when a LEMONdB is opened and is disabled if it is closed.

The compass icon is part of the Isloo iconset released by IconFinder
(http://www.iconfinder.com/iconsets/Isloo_icons_by_IconFinder) in May
2010 and was designed by Asher Abbasi (http://kyo-tux.deviantart.com).
License: Creative Commons Attribution-No Derivative Works 3.0.
Use APLpy to display the finding chart

Connect the 'Finding Chart' button to the view_finding_chart()
handler, which displays in a GTK.Dialog the reference image using
APLpy (the Astronomical Plotting Library in Python). An object of the
FindingChartDialog class is created every time the button is clicked,
which is suboptimal — but sufficient for a first version.
Include name of the field in the title of the Finding Chart window
Update year in copyright string in the About dialog
Hide (not destroy) the Finding Chart window when it is closed

If, instead of destroy()'ing it, we hide() the dialog when the run()
method exits, we can run() it again as many times as we need to. This
allows us to create a FindingChartDialog object only once, the first
time the button is clicked, and hide and show it repeatedly as the
user opens and closes the Finding Chart window. In this manner the
FITS file must be read by APLpy only once and the window remembers
its size, position and any Matplotlib panning and zooming.

Thanks to user 'ptomato' on Stack Overflow for this explanation:
http://stackoverflow.com/a/4663232/184363
Add 'Finding Chart' item to the View menu
Add accelerator key Control-F for the 'Finding Chart' button
Add LEMONdB.star_closest_to_image_coords()
Add unit test for LEMONdB.star_closest_to_image_coords()