¿Qué se entiende por 'objeto de primera clase'?

En un pregunta reciente, Recibí sugerencias para hablar, entre otras cosas, sobre el aspecto de JavaScript donde las funciones son objetos de 'primera clase'. ¿Qué significa la 'primera clase' en este contexto, a diferencia de otros objetos?

EDIT (Jörg W Mittag): Duplicado exacto: "¿Qué es una construcción de programación de primera clase?"