Add a Notification class.

This is similar to util::BlockingCallback, but simpler.
Replace BlockingCallback with Notification in fake_etcd_test.

And also remove BlockingCallback. It is an artefact of an older callback
system at Google, Notification is easier.
Add a util::Task class to manage async operations.