blending: fix missing clamping in some blend modes that involve RGB<->HSL and Lab<->LCh
Do not use hard coded values, code clean-up.

Declare MAX_SPOTS and use it where it applies.
noise profile: canon eos 500d by chris lindsay
Changed lighttable filemanager view so that zooming does not use the upper left image as anchor, but uses the image under the mouse cursor instead.
Main fix is zooming now allows space to be created in fron of the first image, so that the image under the mouse can remain there. In order to achieve this, I found it necessary to move some code around so that the filemanager view is slightly more MVC like, i.e. the expose method does not handle user input any more. The same procedure should be done for the zoomable view, but that is for another commit...
Zooming is ultra smooth now because images are allowed to go outside the borders during the zoom. After zooming the image snap back into the grid.
fixed a problem that a previous zoom operation would mess up a following zoom operation if the view had snapped back to the grid in between. Still has an issue when there is only one image displayed...
Implemented zoom fix for Bug #9168. Smooth zooming code has been removed, so that images always stay perfectly aligned in the grid, due to simpler implementation and broader support in dev community.
fixed zoomable lighttable zoom bug
Fixed issue with empty space before images in lighttable on first load. Also fixed shortcuts g,shift+g,pgup,pgdown. No performance issues have been addressed.
small fix that disallows zooming into empty space above images.
opencl: disable sm_20 for nvidia gts 240
fix small memleak when importing
make colorpicker of tonecurve disappear immediately in the image after deactivation

put dt_control_queue_redraw() at a more reasonable position

(squashed into one to not leave the infinite loop as a separate commit)
Merge branch 'master' into opencl
Some people use development versions of glib ...
Merge branch 'master' into opencl