What is the role of the Container Runtime Interface (CRI) in Kubernetes, and what do you think is its most important function—enabling container runtime flexibility, managing container lifecycle, supporting multiple runtimes, or ensuring communication between Kubernetes and container engines?