Fixed exitcodes

I've adjusted the code of the patch classes so exceptions which are generated there are not catched in the same class as well. This way the exceptions bubble up to the Application which can respond more appropriate.

As a result exceptions in the patch itself will cause an exitcode of 1, which I think is more correct. I my specific   case deployments using Capistrano will now fail if a DB patch fails.