Added an SVD function to matrixReal. Still needs some tidying up, and the current stuff in the return (*this) is probably not what we want.