updated libshardcache

now implements asyncrhonous reading and data which involves fetching from a peer
is now returned to the clients in chunks while being downloaded instead
of being delayed until the whole data was available on the node