Mostly working AES + Block Modes + picking the right implementation based on architecture.