A Formal Hierarchy of RNN Architectures