added password hashing and updated unit tests