thing.py: Create shared _fast_cache_key function

This function is meant to allow all of our Relation code to use the same
key, making it easier to change. It also required a refactor of the
_fast_cache code a bit to operate on cache keys instead of tuples.
cache.py: Let TransitionalCache modify keys.
thing.py: Fix name input to be ascii string

_query returns an ascii string for name no matter what. This was causing
an inconsistency in the cache key. u'subscriber' vs 'subscriber'.
Relation: Start dual-writing new key names.

This is the first part of cleansing rel key names of spaces.
Relation: Cut reads over to the new key name.
thing.py: Sanitize fast cache key for Relations.

This makes the fast cache key safe for the memcache ASCII protocol.

NOTE: This will need to be rolled out in a safe manner (usually a downtime) in order to avoid any data integrity issues.
Relation: Stop dual writing keys.