Added requests handling and structure change

you are right. We can add return true/false for this but it seems to be not the best solution.

personally, i would throw exceptions instead of current error handling. Currently, i can't understand if there is no such method or no controller cause both times you just call errorAction(). We can wrap router call in try/catch to get rid of ErrorController dependecy and have a global catcher for all the shit which can happen in actions and router itself. But it is not the only possible sollution so just keep that in mind and implement if you wish.