Use sha256 instead of sha1
Rename class to allow different key sizes
Reimplement AES_SHA1 for backwards-compatibility, is deprecated
Remove unneeded namespace headers
Use a constant time comparator for cryptographicly sensitive comparisons