Fixed a bug with expanding after flattening into redis hashes.

I flatten objects into redis hashes a lot and it works great expect for
ListType and DictType. When we flatten these types we need to convert them
to primitive types and need to differentiate between an empty value and
None. This is the reason I introduced '{}' and '[]' as empty values.
When saving such a flattened object to redis, then updating the object
and saving again into the hash, old keys get left behind.

This is a more general problem and needs a more powerful solution, most
likely outside of schematics as it is really redis specific. For now,
however, it is convenient to introduce this simple fix, and be willing
to remove it later, perhaps into schematics-redis and a RedisModel class
with a to_hash and from_hash which know how to clean up stale keys.