This is a second barrier because I'm a little nervous about this and I
don't want moto/swf to make any activity progress while in the real
world service, it's strictly impossible once the execution is closed.
Python doesn't seem to have any nice way of freezing an object so here
we go with a manual boundary...
SWF endpoints raise a 400 Bad Request for non-string types, and boto
doesn't enforce it as of today, so better have some safety nets in moto
to avoid this common mistake.
Example exception raised by Boto:
SWFResponseError: SWFResponseError: 400 Bad Request
{u'Message': u'class java.lang.Short can not be converted to an String',
u'__type': u'com.amazon.coral.service#SerializationException'}