reuse the linear operations in quaternions. Also mark some constructors explicit to better spot coding errors.
names with the project file.