Added support for Redis transactions.
Added support for Redis transactions.

Specifically, the MULTI, EXEC and DISCARD commands. They are available
on instances of RedisClient as multi, exec_ and discard, respectively.
Had to use exec_ since exec is a Python keyword.

For typical use one won't have to worry about the method names though.
There is a transaction method that returns a context manager. It will
start and automatically executed queued commands or discard them if
there is an exception in the transaction block.

dieseldev/diesel