Change implements of individual apps

プルリクエスト#1へのコメントを受けて全般的に実装を見なおしました。
個々のアプリケーション関連パッケージをmodel.appsに移動しました。
model.apps配下のクラスのパラメータチェック(主にnullチェック)を全体的に追加しました。
model.apps配下のクラスのコンストラクタを変更しました。
model.apps配下のクラスの各プロパティにsetterを追加しました。
パラメータが空だとAPIがエラーを返すテストを他のテストと分離しました。