If the user has no layers selected, this will select the layer under the cursor (see #140) and then drag (transform) it. If multiple are selected, and the drag occurs on one of the selected, it will drag (transform) all of them. If one or more are selected but the drag occurs on another layer, it deselects the current selection and selects the new layer and drags it (like in the first sentence).
After this is implemented, we can then add support for snapping: #200.
Complexity: 3
Involves: Editor (Rust), Document (Rust)