Add AES-GCM/CCM/Direct support for mmCAU, rearrange aes.c to better accommodate hardware crypto