ensure releasing the response buffer
no need to parse the address string, open_connection() will do that for us
release the shards array and the 'me' string at the end of shardcache_destroy()

since the evictor thread (but also other threads) might be still trying to access them,
so we have to be sure they have been stopped before releasing that memory.

Also check the return value from evict_from_peer to output a warning message if it fails
and set a more relaxed size for the hashtable used as volatile storage
use getaddrinfo() instead of getservbyname() and gethostbyname()