Scaling (or rotation) object using two random points (helpers, vertexes for ex.) The thing is there is an object. I wanna pick a first point anywhere on object to make it a pivot point for scale (or rotation), and pick another point (empty object or vertex of this object) which I will grab then, and by moving this second point in space the object will rotate and scale.
Some 3D-applications have this feature.

Here's another image with a task for better understading. For that task object should be rotated, positioned and scaled, while this points changes their destinations:
You can set the pivot point to be the cursor or the active vertice in edit mode. You rotate normally R r double R tho, not grabbing from a specific point. But it should give a similar result