[TREELIST] Add support for many mouse notifications.

Namely:
 * NM_CLICK
 * NM_DBLCLK
 * NM_RCLICK
 * NM_RDBLCLK
 * WM_CONTEXTMENU
[TREELIST] Rework trelist_delete_item() to fix many issues.

 * Now all code which may potentially send a notification, is moved
   before disconection of the item being deleted.

 * In particular, selection is changed before the deltion starts.

 * The notification MC_TLN_DELETEITEM is now guaranteed to be last
   notification fired for the given item (and its subtree).

 * Some paint glitches fixed. (When deleting last child of a parent or
   when deleting tail child.)
[TREELIST] Fix using ->scrolled_item.

It has to be used via treelist_scrolled_item(), not directly.
[TREEVIEW] Fix sending WM_CONTEXTMENU.

The message expects mouse position in screen coordinates, not in client ones.