AES key generation from UserPassword implemented, PBKDF2 hashing
modularized