Ensure stability for the ErrorObjectFactory#create behavior

The message chosen to be presented in the view represents the exception
message closest to the root cause. If the root cause itself doesn't have
a message, get the next one bubling up the causes tree.