First Steps in Differential Geometry: Riemannian, Contact, Symplectic (Undergraduate Texts in Mathematics)