make sure if the user uses social networking account to login, for some sites (wechat, weibo, qq), a fake email is filled so the user doesn't have to manually provide one. he could however change it later
the general module should not depend on several individual implementations