Reduce the reactor thread's load by dispatching send jobs to workers

The scalability of yrmcds is limited by the reactor thread's high CPU usage.

This pull request moves TCP send from the reactor to worker threads to reduce the reactor
thread's load.　　(TCP recv has been already moved to worker threads in #11.)

The first commit changes `cybozu::resource::m_lock` usage to guard only the valid flag.
To guard pending data buffers used in `cybozu::tcp_socket`, a new mutex is introduced.

The second commit just implements `yrmcds::memcache_socket::on_writable` to
dispatch send jobs to idle workers.

The third commit does the same thing as the second one for replication.