move svds() implementations to a separate file
use S3 for svds()
documentation update
file updated by roxygen2
return correct number of eigenvalues
change the order of returned components
minor documentation improvement