Use constants for string/byte literals

Patch to support #107. 

This moves string/byte literals to constants. 

This is more reliable to maintain, and 2/3 compatibility can be accomplished with one call to `six.b` or equivalent on import of a module rather than an unnecessary function call during runtime whenever a literal is used.
Ok. I'll rename in a separate branch to keep the changeset small, if you don't mind.