Raise ArgumentError when not passed a String

Now, Coercer#initialize with raise an ArgumentError when passed an
argument that is neither nil nor a String. This will help eliminate
confusion in the future, because previously, Coercer#to would return
nil, potentially the source of many bugs, when the value being coerced
was not a String.