LDA.cpp eigennized

I have changed the LAPACK codes into EIGEN3 for the binary classification through LDA.
And please note that the unit test in fact should come *before* you update the implementation. Only way to make sure that before and after is the same. Could you remove the LDA patch and only add a proper unit test (or more) and then update the implementation afterwards?`I know thats some work, but well worth it