Add a timeout parameter to Redis read/write requests
Make sure the core behavior still works with timeout.
Document the new 'timeout' argument to the constructor.