modify signin process, users to create new user, and add subscribe function