Check ConnectionStatus#error_message before rule failures

Previously if an error occurred and created an `error_message` then it would only propagate when there if `failed_rules` was falsy. ![screen shot 2014-12-19 at 01 08 30](https://cloud.githubusercontent.com/assets/1694055/5501195/a265e30e-871b-11e4-8741-6174cfbf77a0.png)