Revert "Change the default behaviour of selection and hovering"

This reverts commit 139d24b4addc4c00df3162dff6923739b98bec1a.

+ some code comment.
noise profile: nikon d5200 by timur
[mi] : duplicate blend params too
masks : delete masks grp on iop reset
update to rawspeed r543
(cherry picked from commit 746bf76c39efa74c2b01988141eaf005bb202bce)
lua : fix an unbalanced call in type registration
lua : fix incorrect calls to pop
fix a minor memory leak in tags
lua add tag support

dt.tags.# : each tag is indexec by a number, use ipairs to iterate
dt.tags.create(name) : creates a new tag and return it. returns the existing tag if it exists
dt.tags.find(name) : returns the tag object or nil if the tag doesn't exist
dt.tags.delete(tag) : deletes the tag object, detaching it from all images
dt.tags.attach(tag,image) : (parameter order can be reversed) attach a tag to an image
dt.tags.detach(tag,image) : (parameter order can be reversed) detach a tag from an image
dt.tags.get_tags(image) : return a table with all tags attached to the image

tags object have the following structure
<tag>.# : each image attached to the tag has a numerical entry
<tag>.name : the name of the tag
<tag>:delete() : deletes the tag
<tag>:attach(image) : see dt.tags.attach
<tag>:detach(image) : see dt.tags.detach
<tag> also handles tostring and equality correctly

the following method have been added to images
<image>:attach_tag(tag) : see dt.tags.attach
<image>:detach_tag(tag) : see dt.tags.detach
<image>:get_tags() : see dt.tags.get_tags
lua : add events

darktable.register_event(event_type,callback,...)

this function register a callback to be called when a given event happents

* event_type : the event to register to
* callback : the function to call on event
* ... : extra parameters, depend on the type of event

this implements two events

* post-import-image : no extra parameters
	called when an image is imported into the database, before any processing happens. Can be registered multiple times
* shortcut : one extra parameter : string : name of the shortcut in the shortcut panel
	called when the corresponding shortcut is pressed. can only be registered once per shortcut
lua : add a way to get the hovered image and the action_images

dt.gui.hovered : the id of the hovered image or nil if no image is hovered
dt.gui.action_images : a table of images on which the user expects us to act.
	It is based on both the hovered image and the selection and is
	consistent with the way darktable works
masks : delete masks on history reset
Hopefully fix a deadlock while shooting tethered

Credits for the fix go to Jo :)
temperature: kelvin is high, introduce kludge factor
(cherry picked from commit 7a194eb4777caa8f8dd5f9944924911cbd248a0b)
wb_presets: Copy Samsung NX5/NX10/NX11 from NX100
(cherry picked from commit 7c0afce9f8da197f41702e160fbde834ed672d3a)
cleanup: removed dead code.
ratings: press 1 to toggle 1 star (avoids moving right hand from mouse to 0)
ratings: fix string for 0 stars.

`desert' was the name for clicking on no user interface element on the image, not the 0 rating.
Enable ctrl-d to duplicate on lt by default
gettext: fix but that was resetting purple color label collections in non-english language.