Userモデルを中心にリファクタリングした

Indent `when` as deep as `case`.<br>Prefer double-quoted strings unless you need single quotes to avoid extra backslashes for escaping.