refactors password change into password controller