BNP subdivision improvement

improved the smoothing scheme workingh with quaternions
if the points of rotation are colinear quaternion uses the axis formed
by cross product of the first two points
it he points are not colinear then quaternion uses the axis formed by
cross product between the first point and a point (0.5*first +
0.5*second)