Fix fail_with so it handles strings in any encoding.

Previously we would get an Encoding::CompatibilityError if
an encoding was used that's not ASCII compatible.

Fixes #201.