refactored matching status into if_status function

* try/rescue test still failing
* exception matching works differently from other -> operators