Implement CM Drag & Drop

Implements https://trello.com/c/io24Byhm/910-drag-and-drop-to-move-selected-text-within-editor.
Adds a new pref `dragDrop` (which defaults to true)
I think that it should be enabled by default, since is not a visual feature, or something that changes any behaviour, it just enables a new action of drag and drop. Unless for some reason you were clicking and dragging, this feature shouldn't change anything, and every user that expects to be able to drag and drop text, will not need to change a preference, which are a bit hidden at this moment.