Ok. Then maybe the user will have to use express(). For example, consider a static frame A. A frame B whose origin coincides with A, but rotates with magnitude q around axis A.z. Now I want to define a frame C whose origin has circular motion in A, and the frame itself has a certain orientation wrt A. 
Now, if I have to define C in A, saying the position vector is B.x is much simpler than converting them in terms of A.In any case, for the above example, you will have to convert either the orientation factor or the position vector to one of A or B to fit your design. Thats not a problem, it actually will simply my current code a lot too.