batch updates

1. sign-in, sign-up, forgot detail, change password UI and functions
done.
2. refactor oauth functions into a OAuthUtil module, support access
token refreshing.