Trying to make quaternions more stable (mixed success...); aded module for robust numeric ops