crypto.aes: feature-complete inefficient implementation
crypto.aes: add benchmark
crypto.aes: better word names and stack effects
crypto.aes: use constants
crypto.aes: remove unused T- and D-tables
crypto.aes: avoid flip in unit tests
crypto.aes: use byte-arrays for words

Also store rcon as words instead of bytes.
crypto.aes: type gf-mult explicitly
crypto.aes: type nxtimes explicitly
crypto.aes: coerce nxtimes result to byte-array
crypto.aes: specialized flip for blocks

This decreases performance slightly, but is necessary for further
static typing which improves it a lot (see next commit).
crypto.aes: type explicitly elementary operations