Fix bug in LEMONdB.add_image()

The DuplicateImageError exception is not raised when there already
is an image in the database with the same Unix time and photometric
filter, but instead if there is (a) an image with the same Unix time
and (b) an image (not necessarily the same one) with the same filter.
This bug has gone unnoticed because so far the try-except block only
raises an exception when we come across a duplicate image.
Add a trigger to make sure α is in range [0, 360[
Add a trigger to make sure δ is in range [-90, 90]
Add LEMONdBTest.test_add_image_ra_dec_out_of_range()
Raise sqlite3.IntegrityError if α or δ are out of range

Make LEMONdB.add_image() raise sqlite3.IntegrityError if the right
ascension or declination are out of range ([0, 360[ and [-90, 90],
respectively). This is done using SQL triggers on both insert and
update of the IMAGES table.

This merges branch 'force-ra-dec-within-range'