This is cleaner than adding hooks to transitionable actions, or performing validation
on every history change. We want validation to run after each operation, but not
while the user is drawing lines or typing in fields.
Trying to eliminate the minimum 10m distance for replacing the original
junction vertex - this is a small threshold. When _not_ replacing this
vertex, the unzorro code will wreck havok on a traffic circle.
(If there is no suitable vertex to use, it will snap to a point between
the nearest vertices, see #4146)
* Support move, rotate, reflect, delete post paste on multiselection
* Improve text and error msgs for singular vs multi selections
* Move `disabled` checks from actions to operations
* Reproject center of rotation (closes#3667)
* Cleanup tests