Generalize error message dependant logic a bit.

I'm trying to get Rubinius to pass the 3-2-stable test-suite.
I've come across some error message dependant logic and tried to remove it or generalize it a bit, at least to have passing test cases.
I'm not sure it's the right way to do it, but I hope to start a conversation about this. :grin:

/cc @dbussink @brixen