fixed #7724 ユーザーエージェント関連処理のリファクタリング

変更が大きくなってしまって申し訳ないのですが、２つのクラスの追加がメインです。
例によって命名と配置場所は思案中です。

###Model/BcAgentクラス
設定ファイルのBcAgentのエージェントごとの配列と１対１対応するオブジェクトとして導入
主に可読性/テスト可能性の向上のため

###Routing/Filter/BcRequestFilterクラス
CakeRequestに便利な検出器を追加
ConfigureのBcRequestに記録される処理を肩代わりできる
例) $request->is('admin'), $request->is('smartphone'), $request->is('from_smartphone')

bootstrapの処理の一部をbeforeDispatchメソッドに移行
* Configureの書込各種処理
* ユーザーエージェントのリダイレクト処理の抽象レベルを読みやすい程度に