Use a key+value for ownership claims, not a directory

Also added a ``Lost`` method to the ``Consumer`` and ``CoordinatorContext`` so that coordinators can tell the ``Consumer`` that a task should be stopped (like if another node claimed the task).

This can happen if the owning node is under a lot of load and is unable to refresh a claim before it expires. In that case another node may claim it before the original owner is able to refresh it. The original node needs a way to let its consumer stop the task as it's being run elsewhere. (In case it's not obvious: this is a *bad* position for your cluster to be in.)
Ha, I actually changed it and then changed it back because etcd only supports seconds, so letting people set it to milliseconds or something would require validation or rounding or other obnoxious stuff to write.