クライアントの制御処理を外部化

クライアント側も今後機能が増えていくと思うので、制御処理部分を外部化しました。
module,class,method 名など、改善点あればご指摘ください。
よろしくお願いします。
細かいことですが変数名は`client`ではなく`controller`でいいような気がしました。