nseig (NonSymetricEigenvalues and revisited balance it uses. poly and ro...

...ts call nseig

I found out that I cant easibly modify symeig_update. So I will split it in small pieces.
This is the first one containing the non symetric eigenvalue computation nseig based on lapack geev
and its associated balance process based on gebal and gebak.

poly and roots now use nseig.

The other updates will follow for lu qr svd chol etc. in following requests.
there is a scalar version, but it does not return the same type as a 1x1 matrix has a unique  eigenvalue which is its element and in this special case if the matrix is real the eigenvalue is real in any other case the returned values must be assumed to be complex.

However I will put scalar_<unspecified_> on all scalar version to allow complex case.