This avoids having to use manipulator-type specific functions to set the orientation. And will make it simpler to access transformation from Python. Currently the matrix is still used as an offset in places. Also per-type orientation values still need to be removed.