[MPS] Fix bidirectional LSTM & small one-direction LSTM fix (#95563)
Fixes #94754
With this PR I hope to finish my breathtaking journey of fixing MPS LSTM.
Here, I enable `bidirectional` on MPS. Also, I've noticed that cache key did not account for all parameters, so there could have been problems with one-directional LSTM when created without bias or dropout and then with one of them.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/95563
Approved by: https://github.com/jhavukainen, https://github.com/kulinseth, https://github.com/malfet