AEAD interface.

This change adds an AEAD interface to EVP and an AES-GCM implementation
suitable for use in TLS.
diff --git a/crypto/evp/evp.h b/crypto/evp/evp.h
index ce40aa5..c6f5ab3 100644
--- a/crypto/evp/evp.h
+++ b/crypto/evp/evp.h
@@ -61,7 +61,10 @@
 #include <openssl/stack.h>
 
 /* OpenSSL included digest and cipher functions in this header so we include
- * them for users that still expect that. */
+ * them for users that still expect that.
+ *
+ * TODO(fork): clean up callers so that they include what they use. */
+#include <openssl/aead.h>
 #include <openssl/cipher.h>
 #include <openssl/digest.h>
 #include <openssl/mem.h>