ENH: orthogonal procrustes solver

This introduces a new feature rather than bug fixing or maintenance, so it's now open for the bike-shedding!