use before_save to keep uid in sync with email