User edit, user_controller refactor (make dry) and user edit tests
update user
authorization