Timeout and pickler

Give users the ability to set socket timeout and use custom pickler and unpickler. The API is compatible with python-memcached.