use the new fbuf and iomux APIs to optimize the output handling in the serving workers

also updated shardcache_replica and shardcache_client to conform to the API changes in libiomux