modified template arguments in subroutines for eigenvalue decompostion
Fixed memory leakage from missing virtual destructor