* Apply layer normalization to the output of each gate in LSTM.
* Apply layer normalization to the output of each gate in GRU.
* Add projection support to LayerNormLSTMCell.
* Add GPU tests.
* Use typeguard.check_argument_types() to validate type annotations.
* Add typeguard as a requirement.
* Minor fixes.
* Fix CI.
* Fix CI.
* Fix test failures for torch 1.8.0
* Fix errors.