Add decryption.

Doesn't realy work yet and I don't know why. It seems like the addKey function is not inverting correctly. But I think there is a problem with the way I'm expanding the key as well.