Attitude Control of Rigid Bodies: A Survey of Representations, Topological Obstructions, and Stabilization Techniques