修复登录的bug

修复重复验证登录的bug

### 目前有2个已知的问题
* 登录用户无法logout
* 登录用户无法选择切换用户登录

### 我的解决方案

    两个问题可以一并解决。通过为OAuth的登录方式增加RPC API的登录方式。目前的登录是通过一系列的302跳转，性能不好，也不利于扩展。

1. 通过API方式验证用户是否已经在gapper登录
    * 已经登录，跳转到2，继续执行
    * 没有登录，跳转到3，继续执行
2. 用户是否已经选择了使用登录的gapper用户作为当前APP的登录用户？
    * 是：直接登录
    * 否：跳转到3，继续执行
3. Gapper的登录选择界面
    * 没有登录：展示登录表单
    * 已经登录：展示当前登录用户的基本信息，并提供用户选择其他用户登录的交互操作
4. APP的登出：直接将2中的用户选择从session中清除