added more robust user tests. implemented password encryption