こんないつもニコニコあなたの隣に這い寄る混沌エラー処理だから、モデルの実装でも自前で例外を定義して投げるよりエラーコードを返せって話になっちゃう訳ですよ‥‥。
finallyが無いのも結局、finallyで処理してもその処理後にメインストリームに復帰するかどうか保証は無い、的なナニでソレなのか。

ともかく、例外だろうが例外じゃ無いエラーだろうが、すべてをtry-catchで処理出来る様になるまでは真っ当にエラーハンドラを記述できると思わない方が良い、という感じ?

まぁ、スクリプト言語である以上、すべてのエラーを例外処理した場合にsyntax errorまで例外ハンドラで処理出来ちゃう、と言う可能性もあるのでアレですが。
ともかく、コードがすべてクラスに詰め込まれているフレームワーク開発で、staticですらないクラス外にコードを書かないと処理できません、ってのは無茶な話です。