Implementing all TODOs
Added password hashing function