¿Cómo está estructurado el mecanismo de la Política del Bucle de Eventos en asyncio? ¿En qué escenarios un desarrollador de backend necesita cambiar forzosamente la política predeterminada del bucle de eventos por una personalizada, por ejemplo usando uvloop basado en libuv, y cómo se logra la mejora en el rendimiento?