[WIP] ENH: add infomax

Addresses #3379

Some problem with matrix transposes (failing tests). Once solved it should be clean.

cc @GaelVaroquaux @ogrisel @agramfort
I'd get rid of the `return_X_mean`. It doesn't save any memory or computation when set to `False`.