AngleViaPoint: added tangency-via-point using one.

+ a lot of other small under-the-hood changes required for smart
point-on-object constraints addition.