Less strict contract for vectors in all transforms: source can be the
same vector as target.

Removed ConstantAffine because transforms are now considered stateful
in general and get copied for each RandomAccess or RealRandomAccess of a
transformed View.

Implemented rotate and scale in AffineTransforms directly, saving
creation of temporary objects and some additions and multiplications.

Added tests for rotation and scale methods.