Better unavailability explanation after solver failure

using the code from OpamState.unavailable_reason