Internalize the password object so we can get it, more explicit errors
more readable html
Finish tests