added password hashing, used ShaPasswordEncoder