There's a misuse of runtime id and container id in Shim::new(). Both
runtime id and container id are needed by shim implentions, so add
parameter `container id` to Shim::new().
Signed-off-by: Liu Jiang <gerry@linux.alibaba.com>
Introduce Shim::wait() to wait for a shim instance to exit, so the
`Shim` implementor could customize the way to manage exit event.
Signed-off-by: Liu Jiang <gerry@linux.alibaba.com>
Currently Containerd shimv2 runtime only provides task service, but it
may provide more service in future. So add interface
Shim::get_task_service() to get the task service object instead of
"Shim: Task".
Signed-off-by: Liu Jiang <gerry@linux.alibaba.com>