improve todo.
use crypto-cipher-types and securemem
remove unnecessary spurious call to block_decrypt. fix #17.
add spaces
update interface with a new direction
update license file.
speedup AES GCM context copy by splitting apart immutable (aes key) and
mutable part (gcm context).
remove commented import list
move to a branching table, and add more consistent api.
add basic support for AES256 with AESNI
add support for block with a 256 bits keys through AESNI.

massive speedup for CTR/XTS/GCM
Reduce duplication using the C preprocessor and def-include mechanism
same to similar. it's not the same code.
add XTS to the list of multi sized implementation

speed improvement in the 2x ~ 2.5x
small rename of define
remove spurious spaces.
add a ni optimised ctr function.
update TODO
update from new crypto-cipher-types
add custom XTS implementation in the BlockCipher instance