work: remove sheep_priv.h from include files

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
work: remove trace.h from include files

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
move work queue codes from sheep to lib

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
[tmp] work: increase the number of threads in done

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
[tmp] collie: add primitive

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
sheep: add operation to get object sha1 digest

Currently, we compare entire object contents to check whether there is no
difference among them.  However, this wastes a lot of network bandwidth and some
operations like vdi check or object recovery take too long time to complete.

This adds an operation SD_OP_GET_HASH to get the sha1 digest of the object, and
enables us to do faster vdi check and recovery.

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
collie: use hash for collie check

This patch checks the hash values of the target objects and skips check and
repair when there is no difference between them.

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
sheep: recover from local when target node has same content

This checks the hash value of the target object before reading the entire data,
and recovers from local if there is a same object in the stale directory.

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
[tmp] collie: use wq for hash

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
[tmp] collie: parallelize vdi check

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
[tmp] tests: fix vdi check order

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
Revert dual nic support

Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>