added password confirmation
modified model, view to handle input errors