Improved signup user model