[MRG+1] LDA refactoring

OK, here is a new version of the LDA class with (optional) shrinkage. The one in #3105 was already very messy, so I thought I'd start from scratch. By default, nothing has changed and the old SVD-based code is used.

TODO list:
- [x] fix travis failure
- [x] deprecation for `store_covariance` fit parameter if possible.
- [x] add entry in whatsnew
- [x] add check that the two new solvers are the same up to high precision
- [x] add a regression test for the transform shape as in #1967 (was already there).
- [x] add some note to the docs which of the two solvers to use.
- [x] rename `ledoit-wolf` to `auto`.
In particular what `shrinkage=0` and `shrinkage=1` mean.