Does this handle unicode objects properly? I don't use them enough to know what you're supposed to do, but I thought just checking against a `str` instance missed some things.