Encode text to UTF-8 bytes in _PylibMC_RunSetCommandSingle
Encode text to UTF-8 bytes in _PylibMC_RunSetCommandSingle

The _key_normalized_obj function already encodes text strings as UTF-8
bytes, but _PylibMC_RunSetCommandSingle explicitly rejected text strings
in the PyArg_ParseTupleAndKeywords format string. Change the format
string to accept text strings, byte strings and any read-only buffer-
compatible object.

The 's#' format returns a char* instead of a 'bytes' PyObject* though,
so also run it through PyBytes_FromStringAndSize to get something
that can be used as a cache key.

lericson/pylibmc,lericson/pylibmc,lericson/pylibmc