Refactoring user state, implementing add user logic