Add Brian Gladman's AES v2011-12-09

Home: http://gladman.plushost.co.uk/oldsite/AES/index.php
Source: http://gladman.plushost.co.uk/oldsite/AES/aes-src-12-09-11.zip
Remove underscores from bgaes2 asm names

Apparently Windows needs these underscores, but these break linking on
every other platform.

See: http://stackoverflow.com/questions/12504868/trouble-building-yasm-nasm-hello-world
Avoid redefining aes_init()

This is defined in aestab.c.  For some reason we were also defining it
in aes_x86_v2.asm in some circumstances.
Add redo build file for bgaes2
Ensure CPPFLAGS are always set
Build using CFLAGS and LDFLAGS if set
Fixup redo distclean in bgaes
Fix final bgaes2 targets
Parameterize compiler
Make redo scripts work with sh

This makes them work out of the box with the minimal do.
Clean out do files in distclean
Disable asm code on amd64

AES is failing on amd64 with asm code.
Add makefile
Add .gitignore
Add minimal do script
Add Brian Gladman's byte oriented AES

Source: http://gladman.plushost.co.uk/oldsite/AES/aes-byte-29-08-08.zip

Per Brian Gladman:

  This is a slower version of AES that is capable of operating on
  systems where only byte operations are available.  It does however
  offer some opportunities for speed improvements if 32-bit operations
  are supported.  This version uses only limited processor resources
  and should hence be capable of use on small embedded processor
  systems.  In addition to providing normal pre-keyed AES operation,
  this version provides AES subroutines with 'on the fly' keying for
  128 and 256 bit keys and can hence remove the need for memory to
  hold the full AES key schedule.
Correct header for changed file name
Add targets for byte-oriented AES
Avoid casting in lvalues

This isn't supported on most compilers.
Avoid overflow conversion in case statement

Instead just encode the overflowed value to avoid the warning.