Added support for pickle and unpickle.

Hi Nigel,

I added two methods, __getstate__ and __setstate__, those methods are used for pickle and unpickle.

This is need for using with some binary caching backend, like redis.

Can you please guide me, in order to add the test for those new methods? Where to add the tests?

Thank you,