sheep: free memory used for exceptional nodes

It seems that current clear_exceptional_node_lists() leaks memory used
for representing delayed and failed nodes.

Signed-off-by: Hitoshi Mitake <mitake.hitoshi@lab.ntt.co.jp>
Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
sheep: let sheep return correct exit status when locking a base directory fails

Currently, lock_and_daemon() always returns 0 as its exit
status. But this behavior is confusing because users cannot detect
errors during locking a base directory via the exit status. This patch
modifies lock_and_daemon() for returning correct exit status.

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