For cad and precicion modeling is needed presicion tools, and is foundamental a good snapping system, which at this moment cannot be found on blender.
During transform, B Key can be used to select a base point (in blender Snap Target) to set the origin of transform for translation, scale, transform.
During transform, C Key can be used to select the center of transform (in blender Pivot Point) for scale and rotation.
During transform, Snap Element can be changed using SHIFT+CTRL+TAB, so we can use diferent types for each part of the operation, eg placing one vertex to and edge.
We enabled the cursor as Snap Element
Options can be enabled by default selecting Manual as Snap Target and Pivot Point. Then we are always requested for a reference before operation starts, if both selected, first goes the Center of transform.
Best snapping system and reference points have developed togheter on source are isolated via this compilers definitions