Add function for machine precision number to avoid expensive calculations in the Givens rotation algorithms

That appears to give more than three times speedup.

This pr also removes the subtype relation to AbstractMatrix and therefore also the now unnecessary ambiguity avoiding method definitions. The size parameter is remove as it is an unnecessary restriction. Finally, the pr adds `@simd` and `@inbounds` in the methods for applying Givens rotations.

[pao: quoting]
rotation

(and same below, L214)