Fix SVD for MSVC.
There's an odd bug for MSVC where the Options template parameter seems
to be forgotten (is always treated as zero) unless we store it within
the class as an enum or static constexpr member. This was causing
the ShouldComputeThinU, ... members to all always evaluate to false,
breaking all the fixed-sized SVDs. This was happening with all versions
of msvc tested. Storing it and using the stored version fixes this.
Also fixed some warnings on MSVC, and temporarily disabled the
EIGEN_DEPRECATED attribute on one constructor until I get a chance to
fix another library that uses it and has -Werror=deprecated-declarations
enabled by default.