custom exceptions + gitignore
AES user data encryption
refactoring + coments