This is intended to support having the launcher create snapshots
from running nodes. The idea is that the executor will ask the
launcher to create a snapshot, and the launcher will return the
external id.
This class will hold data about the process in ZK. It is implemented
as a separate class from the node so that the executor may continue
to hold the lock on the node, while the launcher obtains the lock
for the snapshot object and has authority to write updates to it.
We will be able to detect if either component (executor or launcher)
crashes during the process and can take the appropriate actions.
Change-Id: I74b9bb427a1bcdc11686ac20294acfd49ef85ab0