Unicode en Python - solo UTF-16?

Me sentí feliz en mi mundo de Python sabiendo que estaba haciendo todo en Unicode y codificando como UTF-8 cuando necesitaba enviar algo a un usuario. Entonces, uno de mis colegas me envióEste artículo En UTF-8 y me confundió.

El autor del artículo indica varias veces que UCS-2, la representación Unicode que Python utiliza es sinónimo de UTF-16. Incluso llega tan lejos como diciendo que Python usa UTF-16 para la representación interna de cadenas.

El autor también admite ser un amante y desarrollador de Windows y afirma que la forma en que MS ha manejado las codificaciones de caracteres a lo largo de los años ha llevado a ese grupo a ser el más confundido, por lo que tal vez sea solo su propia confusión. No lo sé...

¿Alguien puede explicar cuál es el estado de UTF-16 vs Unicode en Python? ¿Son sinónimos y si no, de qué manera?

Respuestas a la pregunta(1)

Su respuesta a la pregunta