Attitude estimation from vector measurements: Necessary and sufficient conditions and convergent observer design