Move MAC function to bottom of file

Signed-off-by: Ricky Elrod <ricky@elrod.me>
More idiomatic Haskell approach to encrypt/decrypt

Signed-off-by: Ricky Elrod <ricky@elrod.me>
Started writing documentation based on the paper.

Still have a bunch of functions to document, though.

Signed-off-by: Ricky Elrod <ricky@elrod.me>