encoding should be done outside of pipeline block to accomodate redis

Redis 3.0 makes a change to return a future for some commands run inside pipeline or multi.  This change allows serialization (like `to_json`) to read from redis and get a value, not a future.

I'm not sure how best to test this.  The test I included may not even be a test at all... any ideas?