Anderson Cooper says he's gay, happy and proud