Squashed two patches that simultaneously block the gate

===

Redis: for non-strict Redis class, expired ttl is None, not -1

Python bindings for Redis return None if ttl is expired instead of -1
when Redis class is used (instead of StrictRedis) which is the default
for oslo-incubator. Fixed unit test to pass the check.

The patch does not belong to master where old RPC layer was removed
since Kilo. Neither it belongs to oslo.messaging since the test was not
copied there.

Closes-Bug: #1259532
Change-Id: Id54e78ca56bb5a5bf1cdad31bc5965ff02c0d9b4

===

Fix build break - switch from str to hash for lookup

Closes-Bug: #1372177
Change-Id: I1a1f70bb204d3f43bdacd4ded53225f8416f1639
(cherry picked from commit 6b65a41dd2653aa9e2558c510fa9d3ca3538a908)