added General library to handle AES and SHA encryption