Make sure the display name for an object always returns a string

If the display name for an object does not return a string, the
action code will throw errors that it can't convert the object
to a string.  These are hard to debug as the messages lack
important information like the model being affected.

I debated whether to raise an error in this case or just handle
it automatically.  I came to the conclusion that handling it
automatically is better, since in most cases it's probably simple
to convert whatever the given value is to a string, and display
wise there wouldn't be a difference.